A Node.js microservice template.
- Clone the project.
- Run
make run dev
to start the development environment and attach to a shell process within it. - Execute commands necessary for development (e.g.
yarn start
,yarn debug:start
, andyarn add [packages ...]
). - Read the Introduction tutorial.
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
You can access the latest version of the JSDoc documentation through this link.
This documentation is built and published on every tagged release.
dev
, this service represents the development environment.prod
, this service represents distributable containerized version of the project.
## Development Targets
make build [--] [options] [SERVICE...] # Build or rebuild services.
make up [--] [options] [SERVICE...] # Builds, (re)creates, starts, and attaches to development service.
make rm [--] [options] [SERVICE...] # Force stop and remove service containers, and any anonymous volumes attached to containers.
make run [dev|prod] # Run a project service.
make down [--] [options] # Stop and remove all service containers, volumes, and networks.
make clean # Clean the project of stateful files.
make test [lint|unit|func] # Run the project tests (lint, unit, func).
make debug [start|func|unit] # Run the project scripts with debugging enabled.
## Continuous Integration Targets
make build-npm # Build the Node.js module and pack it as a tarball.
make publish-npm # Publish the Node.js module from the packaged tarball.
make build-docker # Build the production Docker image and save it as a tarball.
make publish-docker # Publish the production Docker image from the saved tarball.
make build-docs # Build the project documentation.
make publish-docs # Publish the project documentation.