Rute
A Simple Router for Deno
Prerequisites
- deno 0.41.0
Releases
0.8
- Rute for Deno v0.41.0
Branches
0.x
- Development branch for version 0.x
Installation
import { Server, Request, Response, Middleware, Next } from "https://raw.githubusercontent.com/jabernardo/rute/{release}/mod.ts";
Run this example
deno run --allow-net --allow-read https://raw.githubusercontent.com/jabernardo/rute/0.8/example/basic/app.ts
Hello World!
import { Server, Request, Response } from "https://raw.githubusercontent.com/jabernardo/rute/0.8/mod.ts";
const app: Server = new Server();
app.get("/", (req: Request, res: Response) => {
res.set({"message": "Hello World!"});
});
app.listen({ port: 8000 });
Built-in await/async support!
/**
* Index page
*/
app.all("/", async (req: Request, res: Response) => {
let data = await fetch("https://hacker-news.firebaseio.com/v0/item/2921983.json?print=pretty");
let json = await data.json();
console.log(json);
res.set(json);
});
Want to combine your apps?
import { app as secondApp } from "../second_app/app.ts";
/**
* Root application
*
* path: /
*/
const app: Server = new Server("multi_app");
/**
* Second application
*
* path: /second
*/
app.use(secondApp.rebase("second"));
Contibuting to Rute!
To contribute to Rute! Make sure to give a star and forked this repository.
Alternatively see the GitHub documentation on creating a pull request.
License
The Rute
is open-sourced software licensed under the MIT license.