A modern full-stack cloud application that allows users to securely upload, manage, search, download, and delete files using Microsoft Azure Blob Storage.
The application provides secure JWT authentication, cloud-based file storage, MongoDB Atlas integration, and a responsive dashboard built with React and Node.js.
https://cloud-based-file-storage-system-psi.vercel.app
https://cloud-storage-api-h1kb.onrender.com
https://github.com/Mandvi28/Cloud-Based-File-Storage-System
Click the image below to watch the complete project demonstration.
- User Registration
- User Login
- JWT Authentication
- Password Encryption using bcrypt
- Protected Routes
- Upload Files
- Download Files
- Delete Files
- Search Files
- View Uploaded Files
- Upload Date & Time
- File Size Formatting
- Azure Blob Storage Integration
- Total Uploaded Files
- Storage Usage
- Recent Files
- Responsive Dashboard
- Search Functionality
- Azure Blob Storage
- MongoDB Atlas
- REST API
- Secure Backend
React + Vite
โ
โ
Axios API
โ
โผ
Node.js + Express
โ
โโโโโโโโโโโโโโดโโโโโโโโโโโโโ
โผ โผ
MongoDB Atlas Azure Blob Storage
(User & Metadata) (Actual Files)
- React.js
- Vite
- React Router DOM
- Tailwind CSS
- Axios
- Node.js
- Express.js
- MongoDB Atlas
- Microsoft Azure Blob Storage
- JWT
- bcryptjs
- Multer
- UUID
- dotenv
- CORS
Cloud-Based-File-Storage-System
โ
โโโ client/
โ โโโ src/
โ โโโ public/
โ โโโ package.json
โ โโโ vite.config.js
โ
โโโ server/
โ โโโ config/
โ โโโ controllers/
โ โโโ middleware/
โ โโโ models/
โ โโโ routes/
โ โโโ server.js
โ โโโ package.json
โ
โโโ screenshots/
โ โโโ home.png
โ โโโ register.png
โ โโโ login.png
โ โโโ dashboard.png
โ โโโ upload.png
โ โโโ azure-storage.png
โ โโโ mongodb.png
โ
โโโ README.md
โโโ .gitignore
git clone https://github.com/Mandvi28/Cloud-Based-File-Storage-System.gitcd server
npm installcd ../client
npm installnpm startnpm run devCreate a .env file inside the server folder.
PORT=5000
MONGO_URI=YOUR_MONGODB_CONNECTION_STRING
JWT_SECRET=YOUR_SECRET_KEY
AZURE_STORAGE_CONNECTION_STRING=YOUR_AZURE_STORAGE_CONNECTION_STRING
AZURE_STORAGE_CONTAINER_NAME=uploads| Method | Endpoint |
|---|---|
| POST | /api/auth/register |
| POST | /api/auth/login |
| Method | Endpoint |
|---|---|
| GET | /api/files |
| POST | /api/files/upload |
| DELETE | /api/files/:id |
- Project Setup
- React + Express
- Tailwind CSS
- Routing
- Authentication UI
- MongoDB Atlas
- Azure Blob Storage
- JWT Authentication
- Register/Login API
- File Upload API
- Azure Blob Upload
- MongoDB Metadata
- Protected Routes
- Dashboard
- Upload Files
- Delete Files
- File Statistics
- Search
- File Size Formatting
- Production Deployment
- README
- GitHub
- Multiple File Upload
- Drag & Drop Upload
- File Preview
- Folder Support
- Rename Files
- File Sharing Links
- Dark Mode
- User Profile
- Email Verification
Mandvi Singh
If you found this project helpful, please consider giving it a โญ on GitHub.
It motivates me to build more cloud-based applications.







