A boilerplate project and structure for a Node.js with TypesScript and all the trimming such as EsLint, Jest, Cypress, Prettier, etc.
Get a clone of this project named correctly using Degit (or just git clone it)
npx degit jordan112/foot#main my-new-node-app
Install all the dependencies
yarn
Build and start the project
yarn start
Or if you want one big super command line that does it all
npx degit jordan112/foot#main my-new-node-app && cd $_ && yarn && yarn start
- Node.js
- TypeScript
- EsLint (with AirBnb defaults) - linting
- Yarn
- Yarn Workspaces (https://classic.yarnpkg.com/blog/2017/08/02/introducing-workspaces/)
- Jest - Unit Testing framework
- Cypress - Automated E2E testing
- TypeDoc.org - for auto documentating
- Prettier - consistent formatting
- Husky - hooks for pre-commiting code to ensure linting and unit tests pass
yarn- install (and update minor versions) of all packagesyarn start- Build and Start the projectyarn build- build TypeScript projectyarn test- run unit testsyarn test:watch- run unit tests while developingyarn test:coverage- run unit tests but also with code coverageyarn test:cypress- open cypress automated testsyarn test:cypress:run- run cypress automated tests (command line only)yarn lint- run esLint to lint projectyarn lint:fix- run esLint and fix any issuesyarn format:prettier- run Prettier to format projectyarn format:prettier:fix- run Prettier to format project and auto correctyarn docs- generate docs using TypeDocyarn release- Release a semantic version of the project
yarn upgrade