A secure backend microservice to handle authenticated file uploads, background processing, and metadata tracking using:
- Express.js (MVC)
- TypeScript
- PostgreSQL with TypeORM
- JWT authentication
- Multer for file uploads
- BullMQ + Redis for async processing
git clone https://github.com/prathmkorgaonkar/SecureFileService.git
cd secure-file-upload
npm installCreate a .env file in the root:
BACKEND_URL= http://localhost:3001
FILE_LOCATION = D:/Secure-File-Service/SecureFileService/
PORT=3001
JWT_SECRET=JWT_SECRET
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USERNAME=postgres
POSTGRES_PASSWORD="password"
POSTGRES_DATABASE=fileupload
REDIS_HOST=localhost
REDIS_PORT=6379CREATE DATABASE fileupload;Or use docker-compose if configured.
npm startApp runs at http://localhost:3001
src/
βββ controllers/
βββ routes/
βββ models/
βββ services/
βββ middlewares/
βββ utils/
βββ jobs/
βββ config/
βββ uploads/