0.0.6 • Published 8 years ago

cervo v0.0.6

Weekly downloads
3
License
ISC
Repository
github
Last release
8 years ago

Cervo

Easy-to-use nodejs server. It is abstracting express plumbing and offers basic but sufficient authentication features based on token. It is intended to be used by IOT. You can easily add custom endpoints, public or secured ones.

Code and examples uses ES6 syntaxes.

NPM Version NPM Downloads Build

Installation

Requires nodejs.

npm install cervo

How using it ?

const Cervo = require('cervo');
let cervo = new Cervo();
cervo.run();

Starting on a specific PORT

let cervo = new Cervo({
  port: 3000
});
cervo.run();

Using authentication

It is based on token. Credentials (users/passwords) are stored in a database. The workflow is the following :

  1. Call signin/signup endpoint with user and password
  2. The endpoint returns a Token
  3. Call secured endpoints by passing the token in the request header with the key x-access-token

Store credentials in mongodb

let cervo = new Cervo({
	database : 'mongodb://[user]:[password]@[mongo_provider]:[mongo_port]/[db_id]'

});
cervo.run();

Core API

EndpointDescriptionExample
POST /public/authenticatecreate a user/connexionsignup?name=user_name&password=password
GET /secured/root of secured endpoints
GET /secured/userslist of users
POST /secured/signinsignin requires name and password in the request header

Custom endpoints

You can define your own endpoints :

let cervo = new Cervo({});
cervo.get('/books', function(){
  res.send(...); // Add the code that get the list of books
});
cervo.run();

By default custom endpoints are public and are hosted under /public.

Secured endpoints

You can define secured endpoints only available for authentified clients :

let cervo = new Cervo({});
cervo.sget('/books', function(){ // pget for private get
  res.send(...); // Add the code that get the list of books
});
cervo.run();

Todo

  • Embedded sqlite for storing users
  • Encapsulate mongoose API to be able to add entities
  • Auto-sugested token for marketing usages
0.0.6

8 years ago

0.0.5

8 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.1

8 years ago

1.0.5

8 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago