This is a template for an Express API using Typescript.
The project is structured as follows:
├── README.md
├── package.json
├── src
│ ├── app.ts
│ ├── bin
│ │ └── www.ts
│ │ └── www.common.ts
│ │ └── www-test.ts
│ ├── hello-world (feature)
│ │ └── controller.base.ts
│ │ └── hello-world.controller.ts
│ │ └── hello-world.service.ts
│ │ └── hello-world.schema.ts (zod schema)
│ ├── middlewares
│ │ └── validation.middleware.ts
│ ├── utils
│ │ └── index.ts
│ │ └── test.utils.ts
├── tsconfig.json
├── jest.config.ts
├── Dockerfile
├── package.json
└── yarn.lock
- Typescript
- Express
- Jest
- Docker
- Zod
- Supertest
- http-request-mock
- Prettier
- Eslint
- Husky
- Lint staged