Base express.js template with TypeScript and best practices ready for start to coding.
- Selector of features to use
- Typescript
- Dodumentation with jsdoc (available in jsdoc/docs/index.html)
- Commits convections
- Eslint
- Repository pattern
- DTO pattern
- Validation request data with middlewares
- Global error handler
- Mogoose config
- Dotenv config
- Testing with jest
- Pretty logs with winston
- Pretty routes pattern
📦src # Main folder of code
┣ 📂config # Folder for app config, here there is files like dotenv config ig
┣ 📂controller # Folder for handlers functions called from routes
┣ 📂dtos # DTO pattern for handle data of models
┣ 📂exceptions # Global handle error and custom exceptions
┣ 📂interfaces # Interfaces for greater abstraction
┣ 📂middlewares # Folder for express middlewares
┣ 📂models # Schemas of mongodb for handle data
┣ 📂repository # Pattern repository for disengage database engine
┣ 📂routes # Express routes for slices
┣ 📂server # Express server instance
┣ 📂services # Services for write core code bussiness
┣ 📂utils # Utils for usage in the application like logger utils
┣ 📜app.ts # Main file of project
┗ 📜setupTests.ts # Config for testing with jest
$ npm i -g express-typescript-template-generator
$ express-typescript-template-generator
$ cd <project-name>
Configure your .env file with the necessary environment variables. Create the .env and .env.dev files at the root of the project with:
- DB_URI=your database uri
$ npm run tsc
$ npm run dev
Open the browser in: http://localhost:3000/api/user.
$ npm start
$ npm run test
$ npm run jsdoc
$ npm run lint
$ npm run lint:fix
👤 Deiver Carrascal
- Website: https://ingdeiver.github.io/portafolio/
- Github: @IngDeiver
Give a ⭐️ if this project helped you!. Can make pull request to contribute!.
This README was generated with ❤️ by readme-md-generator