ditup / ditapi

REST api for ditup

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ditapi

Build Status

REST API for ditup. The web app for the API is based here.

Follows JSON API specification.

Prerequisities

  • Node.js 8.0.0+. We use cutting-edge EcmaScript features like async functions, which are supported since v7.0.1. We use util.promisify, which is supported since node 8.0.0.
  • npm v?
  • Arangodb v3.0 or later
  • maildev
  • @todo

Install

  • @todo
  • clone this repository
  • run npm install in the repository folder
  • run npm run init to create folders for avatar uploads
  • run NODE_ENV=development node ./bin/init-db

Run

NODE_ENV=development npm start

Test

npm run test:watch

Technology

Database

Arangodb is a multi-model NOSQL database. A model we are particularly interested in is graphs. They enable a nice way to model and navigate relationships.

Documentation

API documentation (raw) written with RAML

Development

Linting

Use one of the following:

npm run lint
npm run lint:fix

Testing

We practice behavior-driven development (BDD):

  • figure out expected behaviour
  • write a failing test of the behavior
  • make the test pass
  • refactor
  • repeat

Use one of the following:

npm test
npm run test:watch

Collaboration

If you want to collaborate on the creation of ditup, let's get in touch.

About

REST api for ditup

License:MIT License


Languages

Language:JavaScript 97.7%Language:RAML 1.8%Language:HTML 0.5%Language:CSS 0.1%Language:Shell 0.0%