Fleek
Unifying library for the fleek framework. Uses koa2 as a base to leverage swagger documentation and rapidly build documentation driven code.
Requirements:
- Node >= 6.0.0
Usage
npm install --save fleek
This package is to be used as middleware for Koa2 to aggregate functionality from the various fleek components:
- fleek-parser - parses swagger doc into a more expressive unified object
- fleek-context - takes koa requests and binds the appropriate swagger path data using routington
- fleek-validator - uses the fleek/swagger context to validate incoming requests
- fleek-router - uses fleek/swagger context to route to provided controllers/operations
Examples
For a swagger example, refer to the test swagger json
const Koa = ;const fleek = ; const SWAGGER = ; let app = ; // Parse the request and bind `context.fleek.context` to the appropriate path+method config using the provided swaggerapp; // Validate the request using the fleek contextapp; // If `ctx.fleek.context.tags` contains the tag `authenticated`, athenticate the requestapp // Route to controllers using `ctx.fleek.constext.tag[]` which export CRUD methods, and any specially named exported function using operationIdapp;// controllers/// ├── bar.js [exports: get(ctx, next)]// ├── foo// | └── biz.js [exports: post(ctx, next)]// └── */** [exports: createBar(ctx, next)] app;
Authors
Built and maintained with by the Hart team.