- Clone this repo and remove
.git
folder andpackage-lock.json
file.
git clone [email protected]:rafaph/ts-app-template.git
rm -rf .git package-lock.json
- Change all references for
my-ts-app
to the name of your package or app and rename.env.example
to.env
.
mv .env.example .env
find . -type f | xargs sed -i 's/my-ts-app/your-app/g'
Obs: change your-app
to your app name.
- Start container:
make up
- Install dependencies:
make shell
npm i
- Run a any desired npm script:
npm run start
npm run test
npm run test:watch
npm run test:cov
npm run lint
npm run lint:fix
npm run build
npm run build:watch
Obs: lint:fix also formats your code using prettier.
- Remove container:
make down
- Docker-compose file using last NodeJS LTS version.
- Typescript configured using paths alias for src (@app) and test (@test).
- Test framework (mocha) configured with chai/expect assertions, coverage (with nyc) and sinon for mocks.
- All linting goodies (linting folders, files names and also your code [eslint]).
- A simple GitHub pipeline configured for lint and test tasks.
MIT