Skip to content

DISCONTINUED | Modular & Distributable express API Framework

License

Notifications You must be signed in to change notification settings

JoschuaSchneider/expi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Expi Logo

expi

Modular, Minimalistic API Framework built with express.

Installation

Install expi using

$ npm install --save expi

Example

A working example can be found in the modules root folder.

$ node node_modules/expi/example/app.js

or

$ cd node_modules/expi && npm run example

TODO

  • Documentation for:
    • Module
    • Method
    • Route
    • Expi
  • Linting
  • Testing
  • Add new features
    • Dedicated session/authentication hook
    • Custom response schema
    • Extended response functionality
    • Clusterization
    • Extended versioning (Provide versioned modules under special routes for backward compatablility)
    • New layer ontop of route parameters
  • Expose all express functions without interfering with expi functionality
  • Proper releases
  • Build tasks
  • Handling preRoutes middleware while still returning 404 on module path without a route specified
  • Handle default errors, http codes, bad requests etc.

Documentation

A small overview over the functionality expi provides

Expi.Module(options)

Usage:

    let Module = require('expi').Module
    let module = new Module(options)

Configuration:

  • options
    • name: The name of the Module, this gets displayed as response.meta.name
    • version: The version of the Module, this gets displayed as response.meta.version
    • path: The base path of the module. This path is relative to the root path of the server.
    • ?middleware
      • preRoutes: Array of functions, these functions are plugged in as middleware before any routes and even before the internal expi-middleware
      • postRoutes: Array of functions, these functions are pluggin in as middleware after all routes and even after the internal expi-middleware (Caution: if expi-middleware is active, a response might be sent already!)
    • routes: Array of expi.Route instances
    • ?methods: Array of expi.Method instances

More documentation coming soon, for details take a look at the example in expi_root/example

(This module is in an early state, use with caution)

About

DISCONTINUED | Modular & Distributable express API Framework

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published