Hono.js — Framework Web Tercepat untuk Edge
Hono (炎 — api dalam bahasa Jepang) adalah web framework ultrafast yang dirancang untuk edge computing. Dengan ukuran hanya 14KB, Hono berjalan di mana saja: Cloudflare Workers, Vercel Edge, AWS Lambda, Deno, Bun, dan Node.js.
🔥 Mengapa Hono?
Ultrafast — router berbasis RegExpRouter, salah satu yang tercepat di JavaScript
Multi-runtime — satu codebase, deploy ke mana saja
TypeScript-first — type safety end-to-end termasuk route params
Web Standards — berbasis Request/Response API (fetch standard)
Middleware ecosystem — JWT, CORS, Logger, Rate Limiter, dll
14KB only — zero dependencies, minimal overhead
📦 Quick Start
# Create project
npm create hono@latest my-api
cd my-api
npm install
npm run dev📝 Hello World
import { Hono } from "hono";
const app = new Hono();
app.get("/", (c) => c.text("Hello Hono!"));
app.get("/api/hello/:name", (c) => {
const name = c.req.param("name");
return c.json({ message: });
});
export default app;🛠️ Membangun REST API Lengkap
import { Hono } from "hono";
import { cors } from "hono/cors";
import { jwt } from "hono/jwt";
import { logger } from "hono/logger";
import { zValidator } from "@hono/zod-validator";
import { z } from "zod";
const app = new Hono().basePath("/api");
// Middleware
app.use("*", logger());
app.use("*", cors());
// Public routes
app.get("/posts", async (c) => {
const posts = await db.posts.findMany();
return c.json(posts);
});
// Validated route
const createPostSchema = z.object({
title: z.string().min(1),
content: z.string().min(10),
tags: z.array(z.string()).optional(),
});
app.post("/posts",
jwt({ secret: "my-secret" }),
zValidator("json", createPostSchema),
async (c) => {
const data = c.req.valid("json");
const post = await db.posts.create({ data });
return c.json(post, 201);
}
);
export default app;🌐 Deploy ke Cloudflare Workers
# wrangler.toml
name = "my-api"
main = "src/index.ts"
compatibility_date = "2024-01-01"
# Deploy
npx wrangler deployHono di Cloudflare Workers memberikan latency di bawah 10ms karena berjalan di edge location terdekat dengan user.
🔄 RPC Client — Type-Safe API Calls
Fitur killer Hono: RPC client yang memberi type safety end-to-end:
// server.ts
const route = app.get("/api/users/:id", async (c) => {
const user = await getUser(c.req.param("id"));
return c.json(user);
});
export type AppType = typeof route;
// client.ts — full autocomplete!
import { hc } from "hono/client";
import type { AppType } from "./server";
const client = hc<AppType>("http://localhost:3000");
const res = await client.api.users[":id"].({ param: { id: "1" } });
const user = await res.json(); // fully typed!⚡ Hono vs Express vs Fastify
Express — ekosistem terbesar, tapi lambat dan tidak type-safe
Fastify — cepat di Node.js, tapi tidak multi-runtime
Hono — tercepat, multi-runtime, type-safe, ukuran terkecil
Hono ideal untuk: edge APIs, microservices, serverless functions, dan API yang butuh deploy multi-platform.
Kesimpulan
Hono.js adalah framework web generasi baru yang menggabungkan kecepatan, portabilitas, dan developer experience yang luar biasa. Jika kamu membangun API baru di 2025, Hono layak menjadi pilihan pertama — terutama jika kamu menargetkan edge deployment.