A modern, full-stack file sharing application built with React, Express, and MongoDB. Instantly upload files and share secure download links with anyone.
- Easy File Upload: Upload any file and get a unique, shareable download link.
- Download Tracking: Each file's download count is tracked.
- Modern UI: Clean, responsive React interface.
- REST API: Robust backend with Express and MongoDB.
- Frontend: React, Vite, Axios
- Backend: Node.js, Express, Multer, Mongoose
- Database: MongoDB
git clone <your-repo-url>
cd File-sharing-applicationcd server
npm installcd ../client
npm installCreate a .env file in the server directory:
MONGO_URI=your_mongodb_connection_string
cd server
npm run devcd ../client
npm run devFile-sharing-application/
├── client/ # React frontend
│ └── src/
│ ├── App.jsx
│ └── service/api.js
├── server/ # Express backend
│ ├── controller/
│ │ └── image-controller.js
│ ├── models/
│ │ └── file.js
│ ├── routes/
│ │ └── routes.js
│ ├── utils/
│ │ └── upload.js
│ ├── database/
│ │ └── db.js
│ └── server.js
POST /upload— Upload a file (multipart/form-data, field:file)GET /file/:fileId— Download a file by its unique ID
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
