Bun Hono API

Bun + Hono

ComeOnOliver Updated 61 repo stars

File contents

Bun + Hono

Setup

bun create hono my-api
cd my-api && bun install && bun run dev

API

import { Hono } from 'hono';
import { cors } from 'hono/cors';
import { zValidator } from '@hono/zod-validator';
import { z } from 'zod';

const app = new Hono();
app.use('*', cors());

app.get('/api/users', async (c) => {
    const users = await db.query('SELECT * FROM users');
    return c.json(users);
});

app.post('/api/users', zValidator('json', z.object({ name: z.string(), email: z.string().email() })),
    async (c) => {
        const { name, email } = c.req.valid('json');
        await db.query('INSERT INTO users (name, email) VALUES (?, ?)', [name, email]);
        return c.json({ ok: true }, 201);
    });

export default app;

Bun.serve is ~3x faster than Node.js HTTP

ComeOnOliver/skillshub/tree/main/skills/skillshub-team/catalog-batch5/bun-hono-api commit 30d8856785

Frequently asked questions

npx skillmds@latest add comeonoliver/bun-hono-api