Skip to content
This repository has been archived by the owner on Apr 21, 2020. It is now read-only.

t2ee/vader

Repository files navigation

IMPORTANT !!

@t2ee/vader has now moved towards 1.x versions, with brand new mechanisms (though, 99% like apis as 0.x versions). For legacy 0.x versions, please see 0.x branch.

Introducation

@t2ee/vader is a routing component (with JAX-RS like grammars). It is to be used with koa@2.

For detailed introduction and examples, please visit vader.t2ee.org

Installation

npm i reflect-metadata @t2ee/core @t2ee/sl4js koa@2 @t2ee/vader -S

Example

import 'reflect-metadata';
import * as Koa from 'koa';
import {
    Path,
    Router,
    QueryParam,
    Response,
    GET,
} from '@t2ee/vader';

const router = Router.newInstance();

@Path('')
class Controller {

    @GET
    @Path('/say')
    say(@QueryParam('message') message: string) {
        const response = new Response();
        response.body = message;
        return response;
    }
}

router.use(Controller);
const app = new Koa();
app.use(router.routes());
app.listen(8080);