dewy
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

dewy

Build Coverage License Language Typescript
deno.land/x/dewy Version Downloads

Dewy(dǝw-y) is a minimalist HTTP server framework with a small codebase, utilizing built-in URLPattern for efficient routing.

Usage

with Deno

import { Router } from "https://deno.land/x/dewy/mod.ts";

const router = new Router();

router.get("/", () => {
  return Response.json({
    message: "Hello World",
  });
});
router.get("/articles/:id", ({ match }) => {
  return Response.json({
    id: match.pathname.groups.id,
  });
});

Deno.serve(router.dispatch.bind(router), {
  port: 8080,
});
deno run --allow-net --unstable server.ts

In addition to using Deno.serve, you can also use the HTTP server from the standard library by importing https://deno.land/std@0.167.0/http/server.ts.

Here is an example:

import { serve } from "https://deno.land/std@0.167.0/http/server.ts";

/* ... */

serve(router.dispatch.bind(router), {
  port: 8080,
});

Using the HTTP server from the standard library allows you to deploy your application to a Deno Deploy environment.

with NPM

npm install dewy

Middlewares

CORS

The cors middleware from dewy allows you to easily add CORS (Cross-Origin Resource Sharing) support to your routes.

import { cors } from "https://deno.land/x/dewy/middlewares/cors.ts";

router.addRoute({
  method: ["GET", "POST", "OPTIONS", "CUSTOMMETHOD"],
  pattern: "/cors",
  middleware: cors({
    allowMethods: ["POST", "CUSTOMMETHOD"],
  }),
}, () => {
  return Response.json({ success: true });
});

Package Sidebar

Install

npm i dewy

Weekly Downloads

2

Version

0.1.0

License

MIT

Unpacked Size

37.2 kB

Total Files

28

Last publish

Collaborators

  • wan2land