A Node.js project written in Typescript, including XO and Prettier triggered by a pre-commit hook.
Use this section to detail the purpose of the application. Try to provide sufficient context so that any developer understands what the application does and why it is needed.
This section can be used to provide an overview of the main technologies this application uses in order to work. Justifications for each can be detailed with architectural decision records.
This section should explain the limits of the application, i.e. what it is and is not for.
This section provides an opportunity to lay out the future direction of the application. This does not have to be comprehensive, but should give the reader an idea of the next likely features to be implemented.
This application can be built using the build
script found in
package.json
.
You can run tests locally by using the test
script found in package.json
. If
you would like to run tests with coverage or in watch mode you can,
respectively, run the test:coverage
, test:watch
scripts.
Use this section to explain how to run this application locally, detailing any pre-requisite steps, local configuration etc, commands to execute, and any expected behaviour/output.
Use this section to explain how this application is deployed, and to which environments.
In the package.json file there is a version
field, which must be updated if
publishing this package.
XO is a wrapper for ESLint that analyses source code and
reports on all instances where the rules has been violated. Prettier is an
opinionated code formatter. The configuration for both tools can be found in
package.json
.
This application utilises Husky to add XO and Prettier to the pre-commit and pre-push hooks so they can process all staged/committed files automatically.
Use this section to record any additional documentation relevant to the application. This could take the form of hyperlinks to a wiki, for example.
A set of Architectural Decision Records (ADR) can be found in the
doc/architecture/decisions/
directory. Please use
adr-tools to record new
decisions.
Contributions to this application can be made by:
- Writing new tests
- Reviewing code
- Improving the documentation. This can be in the form of:
- Readme
- Wiki
- Diagrams
- Architectural decision records
All source code changes should be submitted as pull requests.