A minimal, highly performant middleware PSR-15 inspired function based micro framework built with as little complexity as possible, aimed primarily at those developers who want to understand all the vendors they use.
- node: 20
 - @chubbyts/chubbyts-dic-types: ^2.0.1
 - @chubbyts/chubbyts-http-error: ^3.0.1
 - @chubbyts/chubbyts-log-types: ^3.0.1
 - @chubbyts/chubbyts-throwable-to-error: ^2.0.2
 - @chubbyts/chubbyts-undici-server: ^1.0.1
 
Through NPM as @chubbyts/chubbyts-framework.
npm i \
  @chubbyts/chubbyts-framework-router-path-to-regexp@^3.0.0 \
  @chubbyts/chubbyts-framework@^3.0.1import { STATUS_CODES } from 'node:http';
import { createPathToRegexpRouteMatcher }
  from '@chubbyts/chubbyts-framework-router-path-to-regexp/dist/path-to-regexp-router';
import type { ServerRequest } from '@chubbyts/chubbyts-undici-server/dist/server';
import { Response } from '@chubbyts/chubbyts-undici-server/dist/server';
import { createApplication } from '@chubbyts/chubbyts-framework/dist/application';
import { createErrorMiddleware }
  from '@chubbyts/chubbyts-framework/dist/middleware/error-middleware';
import { createRouteMatcherMiddleware }
  from '@chubbyts/chubbyts-framework/dist/middleware/route-matcher-middleware';
import { createGetRoute } from '@chubbyts/chubbyts-framework/dist/router/route';
import { createRoutesByName } from '@chubbyts/chubbyts-framework/dist/router/routes-by-name';
const app = createApplication([
  createErrorMiddleware(true),
  createRouteMatcherMiddleware(
    createPathToRegexpRouteMatcher(
      createRoutesByName([
        createGetRoute({
          path: '/hello/:name',
          name: 'hello',
          handler: async (serverRequest: ServerRequest<{name: string}>): Promise<Response> => {
            return new Response(`Hello, ${serverRequest.attributes.name}`, {
              status: 200,
              statusText: STATUS_CODES[200],
              headers: {'content-type': 'text/plain'}
            });
          },
        }),
      ]),
    ),
  ),
]);Running the application via the standard node http implementation.
npm i @chubbyts/chubbyts-undici-server-node@^1.0.0Check the Usage section.
- @chubbyts/chubbyts-undici-api
 - @chubbyts/chubbyts-undici-cors
 - @chubbyts/chubbyts-undici-multipart
 - @chubbyts/chubbyts-undici-static-file
 
2025 Dominik Zogg