Runtime Environments 
It is possible to use Routup in any javascript runtime environment. Below are examples for Node.Js, Bun and Deno. There are different dispatchers how requests can be transmitted in different ways.
Node 
typescript
import { createServer } from 'node:http';
import {
    createNodeDispatcher,
    coreHandler,
    Router
} from 'routup';
const router = new Router();
router.get('/', coreHandler(() => 'Hello World'));
const server = createServer(createNodeDispatcher(router));
server.listen(3000)Bun 
typescript
import {
    createWebDispatcher,
    coreHandler,
    Router
} from 'routup';
const router = new Router();
router.get('/', coreHandler(() => 'Hello World'));
const dispatch = createWebDispatcher(router);
Bun.serve({
    async fetch(request) {
        return dispatch(request);
    },
    port: 3000,
});Deno 
typescript
import {
    createWebDispatcher,
    coreHandler,
    Router
} from 'routup';
const router = new Router();
router.get('/', coreHandler(() => 'Hello World'));
const dispatch = createWebDispatcher(router);
const server = Deno.listen({
    port: 3000
});
for await (const conn of server) {
    const httpConn = Deno.serveHttp(conn);
    for await (const requestEvent of httpConn) {
        const response = await dispatch(
            requestEvent.request
        );
        requestEvent.respondWith(response);
    }
}