A common basis for Node.js microservices.
JavaScript TypeScript HTML CSS
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc/img
packages
.eslintignore
.eslintrc
.gitignore
.stylelintignore
.stylelintrc
.travis.yml
CHANGELOG.md
CONTRIBUTING.md
LICENSE
README.md
commitlint.config.js
lerna.json
package.json
tslint.json

README.md

turing-microservice

turing-microservice

build coverage bitHound dependencies devDependencies version license

"We can only see a short distance ahead, but we can see plenty there that needs to be done."
- Alan Turing

A common basis for Node.js microservices.

Breaking Changes

turing-microservice is a work in progress. See CHANGELOG.md for instructions on breaking changes.

Features

  • config module: Adds hierarchical configuration with files, environment variables and command-line arguments.
  • health module: Adds an express route for an health check.
  • logging module: Adds multi-transport async logging.
  • mongo module: Adds a port to mongodb.
  • server module: Adds an express server.
  • status module: Adds aggregation of sub-statuses and express routes for an html and json status report.
  • vault module: Adds a promise for merging secrets from vault with config.

next up:

  • toggles module: Adds feature-toggles support.
    • toggles-mongo module: Adds toggle persistence to mongodb.
  • jobs module: Adds jobs support.
    • jobs-mongo module: Adds jobs persistence to mongodb.
  • hmac module: Adds middleware for hmac authentication.
  • metrics module: Adds metrics support. (e.g. RAM, CPU,...)
  • cache module: Adds application cache support.

Example: turing-example

Contains tasks for:

  • watch: Provides live reloading of code during development.
  • test: Test server and client side.
  • build: Build production assets with service-worker caching and offline support.
  • start: Start the server in production mode.

Setup

Install dependencies:

$ npm install && npm run bootstrap

Testing

$ npm test

Dependency Update

Client dependencies:

$ npm-check -E -u

Contributors

  • Benedikt Stemmildt

License

Apache-2.0