This application is deployed on DigitalOcean. Please check it out 😄 here.
Frontend:
Backend:
Database:
Email Service:
Deployed On:
- Secure file transfer via email, or unique shareable links.
- Intuitive and friendly UI with drag & drop feature.
- Toast notifications for actions: uploading files, exceed file size limit, sending email etc.
- View upload progress on the app.
- Send large files up to 100 MB per transfer.
- Files are available up to 24 hours before being automatically and permanently erased from servers.
├── backend/
│ ├── config/
│ │ ├── connectToMongoDb.js
│ │ └── cronScript.js
│ ├── handlers/
│ │ └── fileHandlers.js
│ ├── models/
│ │ └── File.js
│ ├── handlers/
│ │ ├── fileHandlers.js
│ │ └── cronScript.js
│ ├── public/
│ │ ├── css/
│ │ │ └── style.css
│ │ ├── img/
│ │ │ ├── download-sd.svg
│ │ │ └── logo.png
│ │ └── favicon.ico
│ ├── routes/
│ │ ├── downloadRoutes.js
│ │ ├── fileRoutes.js
│ │ ├── index.js
│ │ └── showRoutes.js
│ ├── services/
│ │ ├── emailService.js
│ │ └── emailTemplate.js
│ ├── uploads/
│ │ └── .gitkeep
│ ├── views/
│ │ └── download.ejs
│ └── server.js
├── frontend/
│ ├── copy-icon.svg
│ ├── favicon.ico
│ ├── file.svg
│ ├── index.html
│ ├── index.js
│ ├── logo.png
│ ├── style.css
│ └── undraw-upload.svg
├── .env.example
├── .gitignore
├── package-lock.json
├── package.json
└── README.md
In order to run the project you need node>=16
and npm>=8
installed on your machine.
git clone https://github.com/rtewari056/easyshare.git
cd easyshare
In the root
directory, run:
npm install
APP_BASE_URL=http://localhost:5002
PORT=5002
MONGO_URI="YOUR_MONGO_CONNECTION_URL"
SMTP_HOST=<YOUR_SMTP_SERVER_HOST_NAME>
SMTP_PORT=587
SMTP_USER=<YOUR_SMTP_SERVER_USER_NAME>
SMTP_PASSWORD=<YOUR_SMTP_SERVER_PASSWORD>
npm run dev
If you want to contact me, you can reach me through below handles.
easyShare is licensed under the MIT License.