Skip to content

ryota-ka/koa-fp-ts-router

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

koa-fp-ts-router

npm

A Koa router middleware built on the top of fp-ts-routing.

Installation

Note that these packages are peer dependencies of this library, which need to be installed separately.

Using npm

$ npm install koa-fp-ts-router

Using yarn

$ yarn add koa-fp-ts-router

Usage

import { end, lit, str } from 'fp-ts-routing';
import Koa from 'koa';
import { Router } from 'koa-fp-ts-router';

const app = new Koa();

// matches
const root = end; // `/`
const user = lit('users').then(str('id')).then(end); // `/users/:id`

// routes
const router = new Router();

router.get(root, function (ctx) {
  ctx.body = 'Hello, world!';
});

router.get(user, function (ctx) {
  ctx.body = `Hello, ${ctx.params.id}!`;
});

// Use the router middleware
app.use(router.routes());

app.listen(3000);