Skip to content

Latest commit

 

History

History
61 lines (45 loc) · 2.59 KB

README.md

File metadata and controls

61 lines (45 loc) · 2.59 KB

Build Status Test Coverage npm version Gitter

Serviser Logo

serviser is abstraction layer built on top of express for creating transparent, scalable and stable REST APIs.

The emphasis is put, among other features, on REST API documentation, validation (security), error handling and automation of perpetually repeated tasks.

The goal is to provide out of the box solution to common problems that arise when using nodejs frameworks at scale but at the same time keeping the core functionality lightweight with modular, swappable plugin based architecture.

Quick start

Generate working new project skeleton:

> mkdir my-api
> cd my-api 
> npx serviser-template init # shorthand for npm i serviser-template
                             # && ./node_modules/.bin/serviser-template init
> npm start

Resources

Features

  • Promises!
  • Documentation autogeneration
  • A SDK client package autogeneration
  • JSON Schema integration (no duplicate definitions anymore!)
  • request data validation
  • response data filters
  • App lifecycle events (event driven)
  • shell integration
  • Resource & Service integrity inspection capabilities (health monitoring)
  • caching solutions
  • Semantic Service versioning
  • and more (see Public API Reference)!

What this project is NOT:

  • All in one MVC & ORM robust and monolithic solution.

Main ideas:
Interfaces are created and procedures standardized only where it's necessary.
Non-integral parts of the framework are built as plugins.
Loosely coupled design is often prefered.

Tests

npm test