This repository is a boilerplate for to build REST APIs with Node.Js, using ExpressJs and TypeScript.
- Docker and Docker Compose integration
- Dependency Injection done with the nice framework from TypeDI
- Simplified Database Query with the ORM TypeORM
- Easy Exception Handling thanks to routing-controllers
- Integrated Testing Tool thanks to Jest
- Code linter to ESLint
- Debug mode for dockerized environment
- Authentication using FusionAuth
- GitLab CI for deploy on the AWS Platform
- GitHub Actions integration for CI
Creating the project just:
generator.sh project-path project-name [git-repository]
./generator.sh /tmp/project my-projectExit:
Project name is my-project Target dir is /tmp/project Target repository is empty Cloning... Cloned :D Run cd /tmp/project source dev.shCreating the project and binding to Git repository:
./generator.sh /tmp/project my-project git@github.com:my-user/my-project.gitExit:
Project name is my-project Target dir is /tmp/project/ Target repository is git@github.com:my-user/my-project.git Cloning... Initializing repository... Initialized empty Git repository in /tmp/project/.git/ Cloned :D Run cd /tmp/project/ source dev.shdevhelp Prints devhelp db_setup Setup environment dkbuild Builds project docker image pkg_install Install node packages dkupa Starts docker services in attach mode (at first time, runs pkg_install) dkupd Starts docker services in detached mode (at first time, runs pkg_install) dk "cmd" Runs the 'cmd' command inside the container dkdown Stop and remove docker containers