romajs / laranjo-api

Express rest api for Google Hangouts Chat Bot, featuring Laranjo memes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

laranjo-api

GitHub js-standard-style codecov Maintainability Test Coverage

CircleCI node npm Requires.io

Run in Postman

Description

API for Google Hangouts Chat Bot contemplating @Laranjo memes.

Development

Requirements

  • Node v6
  • Docker
  • Docker-compose v2

Stack

  • Express
  • MongoDB
  • Cloudinary (Resurce/Image Upload)

Git hooks

This project use husky npm module to manage git hooks. Please see husky configuration under package.jsonfile. To avoid git hooks execution you can use the --no-verify flag.

Test

All tests are unitary api level, and done with mocha and sinnon npm modules.

npm run test

Coverage

Coverage is done with istanbul npm module.

npm run test:cover

Lint

Lint is done with eslint and eslint-watch npm modules.

npm run lint

Can also be done in watch mode:

npm run lint:watch

Configuration

All configuration is done with convict npm module.
Everything can be specified through environment variables.

Build

Docker image build for development purpouse (hot reload).

npm install --dev
docker-compose build

Run

Bring all stack up and running.

docker-compose up

Can also be done simply with npm run start:dev, but you will need to manage things on your own:

  • MongoDB
  • Cloudinary
  • A lot of environment variables

Access

http://localhost:8000

Update dependencies

npm install -g npm-check-updates
ncu -u
npm i

Documentation


romajs - 2018

About

Express rest api for Google Hangouts Chat Bot, featuring Laranjo memes

License:MIT License


Languages

Language:JavaScript 100.0%