WebDrop is a secure peer-to-peer file transfer application that allows users to share files directly between devices over WebRTC. This README provides instructions for setting up and running the application in both development and production environments.
Please consider that this project was made within 12h timer and is just a proof of my learning skills (I've never touched typescript before)
To get started with WebDrop, clone the repository and install the dependencies.
git clone https://github.com/sadesguy/webdrop.git
cd webdrop
bun i
-
Docker Development Environment:
- To run the application in development mode using Docker, use the following command:
docker-compose -f docker-compose.dev.yml up
-
Local Development:
- You can also run the application locally without Docker. Make sure you have Bun installed, then run:
bun run dev
-
Docker Production Environment:
- To build and run the application in production mode using Docker, use the following command:
docker-compose up --build
-
Building for Production:
- To build the application for production, run:
bun run build bun run start:docker
WebDrop provides Docker support for both development and production environments. The Dockerfiles are located in the docker
directory.
- Development Dockerfile:
docker/dev.Dockerfile
- Production Dockerfile:
docker/prod.Dockerfile
Create a .env
file in the root directory based on the .env.example
file to set up the necessary environment variables for the application.
This project is licensed under the MIT License. See the LICENSE file for more details.
Beware that this README and some ui components (i also asked it to write some comments for easier future development) were written with the help of AI, so there might be bugs and stupidity