Mini Drive
Source code: https://github.com/gofhilman/file-uploader
A stripped-down version of Google Drive. This project allows users to upload, manage, and share files and folders in a structured and user-friendly way.
Features
- User authentication and session management
- File and folder creation, renaming, and deletion
- File uploads with size tracking
- Folder sharing with expiration dates
- Organized folder hierarchy
- Validation for files and folders
Tech stack
- Backend: Node.js, Express.js
- Database: PostgreSQL (managed with Prisma ORM), Supabase for file storage
- Authentication: Passport.js with session-based authentication
- Frontend: EJS templates for server-side rendering
- Styling: CSS
- bcryptjs: for password hashing
- dotenv: environment variable management
- multer: file uploads
- express-validator: input validation