https://github.com/bernietv/filestorage-platform
A sleek, secure, and scalable file storage platform powered by the MERN stack with AWS S3, JWT auth, and a modern UI for effortless uploads, downloads, and analytics ππ¦ππ
https://github.com/bernietv/filestorage-platform
aws-s3 expressjs jwt-authentication logtail mongodb nodejs passportjs react redux-toolkit shadcn-ui tailwindcss typescript vite
Last synced: 3 months ago
JSON representation
A sleek, secure, and scalable file storage platform powered by the MERN stack with AWS S3, JWT auth, and a modern UI for effortless uploads, downloads, and analytics ππ¦ππ
- Host: GitHub
- URL: https://github.com/bernietv/filestorage-platform
- Owner: BernieTv
- License: other
- Created: 2025-08-18T07:54:39.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-22T20:07:10.000Z (10 months ago)
- Last Synced: 2025-10-04T09:41:45.356Z (9 months ago)
- Topics: aws-s3, expressjs, jwt-authentication, logtail, mongodb, nodejs, passportjs, react, redux-toolkit, shadcn-ui, tailwindcss, typescript, vite
- Language: TypeScript
- Homepage: https://file-storage-platform.vercel.app
- Size: 231 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

# π FileStorage Platform
A **nextβgen cloud storage solution** where speed, security, and simplicity collide. π Built with the **MERN Stack**, this platform lets you upload, manage, and share files effortlessly while packing in serious power with AWS S3, JWT auth, analytics, and a slick modern UI. Perfect for devs, teams, or anyone who vibes with **secure & scalable file management**.
---
## ποΈ Key Features: π
- π Authentication (Email + Password with JWT)
- π Analytics & Charts for Storage Insights
- π€ Multiple File Uploads
- βοΈ AWS S3 Integration for Secure & Scalable Storage
- πΎ Storage Tracking for Each User
- π Bulk File Download as Zip
- π¦ TypeScript SDK Published to npm
- π API Key Authentication for Secure Access
- π
Pagination & File Search
- π Logging with Logtail
- π Deployment Ready
- π Built with MERN Stack (Node.js, MongoDB, React 19)
- π¨ Styled with Tailwind v4 & Shadcn/ui
---
## π οΈ Tech Stack
- **Frontend:** React 19, TypeScript, TailwindCSS v4, Shadcn/ui, Vite
- **Backend:** Node.js, Express.js, TypeScript, MongoDB, JWT, Passport.js
- **Cloud & Storage:** AWS S3
- **Logging & Monitoring:** Logtail
- **State Management:** Redux Toolkit
- **Package Management:** npm
---
## π Simplified Project Structure
```
.
βββ backend # Node.js + Express API
β βββ src
β β βββ config # Configurations (DB, AWS, JWT, etc.)
β β βββ controllers # API Controllers
β β βββ middlewares # Authentication & Error Handling
β β βββ models # MongoDB Models
β β βββ routes # API Routes (Internal & Public)
β β βββ services # Business Logic
β β βββ utils # Helper Functions
β β βββ validators # Request Validators
β βββ tsconfig.json
β
βββ client # React Frontend
β βββ src
β β βββ app # Redux & API Client
β β βββ components # UI Components
β β βββ features # Feature Modules (Auth, Files, Analytics)
β β βββ layouts # Page Layouts
β β βββ pages # Page-Level Components
β β βββ routes # Routing Config
β β βββ hooks # Custom Hooks
β βββ vite.config.ts
β
βββ sdk # TypeScript SDK Published to npm
βββ README.md # Documentation
```
---
## βοΈ Environment Variables
### Backend (`.env`)
```
PORT=5000
NODE_ENV=development
MONGO_URI=your_mongo_connection_string
JWT_SECRET=your_jwt_secret
JWT_EXPIRES_IN=1d
LOG_LEVEL=info
LOGTAIL_SOURCE_TOKEN=your_logtail_token
LOGTAIL_INGESTING_HOST=your_logtail_host
AWS_ACCESS_KEY=your_aws_key
AWS_SECRET_KEY=your_aws_secret
AWS_REGION=your_aws_region
AWS_S3_BUCKET=your_bucket_name
ALLOWED_ORIGINS=http://localhost:5173
```
### Frontend (`.env`)
```
VITE_BASE_API_URL=http://localhost:5000/api
VITE_API_URL=http://localhost:5000
VITE_REDUX_PERSIST_SECRET_KEY=your_secret_key
```
---
## π Installation & Setup
Clone the repository:
```bash
git clone https://github.com/BernieTv/FileStorage-Platform.git
cd FileStorage-Platform
```
### Backend Setup
```bash
cd backend
npm install
npm run dev
```
### Frontend Setup
```bash
cd client
npm install
npm run dev
```
---
π‘ Designed for **builders and creators**, this platform turns file storage into a smooth, secure, and scalable experience β¨.