- Programming Language: TypeScript
- Framework: Express.js
- Database: MongoDB (Mongoose ODM)
- Authentication: JWT (JSON Web Tokens)
- Password Hashing: bcrypt
- Validation: Zod
- Security: Helmet, CORS, Rate Limiting
- File Uploads: Multer + Cloudinary
- Email Service: Nodemailer
-
Clone the repository:
git clone https://github.com/Sabbir2809/express-mongoose-mvc-starter-template.git cd express-mongoose-mvc-starter-template -
Install dependencies:
yarn install
-
Setup environment variables in
.env.NODE_ENVIRONMENT=development PORT= DATABASE_URL= CORS_ORIGIN= # password BCRYPT_SALT_ROUNDS= # JWT JWT_ACCESS_SECRET_KEY= JWT_REFRESH_SECRET_KEY= # SMTP SMTP_USER= SMTP_PASSWORD= # Cloudinary configuration CLOUDINARY_CLOUD_NAME= CLOUDINARY_API_KEY= CLOUDINARY_API_SECRET= # ImageKit configuration IMAGEKIT_PUBLIC_KEY= IMAGEKIT_PRIVATE_KEY= IMAGEKIT_PUBLIC_URL_ENDPOINT_KEY=
-
Run the development server:
yarn dev
-
Open
http://localhost:5000in your browser.