Skip to content

Latest commit

聽

History

History
85 lines (83 loc) 路 2.83 KB

File metadata and controls

85 lines (83 loc) 路 2.83 KB
title Hono - Web framework built on Web Standards
titleTemplate :title
head
meta
property content
og:description
Hono is a small, simple, and ultrafast web framework built on Web Standards. It works on Cloudflare Workers, Fastly Compute, Deno, Bun, Vercel, Netlify, AWS Lambda, Lambda@Edge, and Node.js. Fast, but not only fast.
layout home
hero
name text tagline image actions
Hono
Web application framework
Fast, lightweight, built on Web Standards. Support for any JavaScript runtime.
src alt
/images/code.webp
An example of code for Hono. import { Hono } from 'hono' const app = new Hono() app.get('/', (c) => c.text('Hello Hono!')) export default app
theme text link
brand
Get Started
/docs/
theme text link
alt
View on GitHub
features
icon title details
馃殌
Ultrafast & Lightweight
The router RegExpRouter is really fast. The hono/tiny preset is under 14kB. Using only Web Standard APIs.
icon title details
馃實
Multi-runtime
Works on Cloudflare, Fastly, Deno, Bun, AWS, or Node.js. The same code runs on all platforms.
icon title details
馃攱
Batteries Included
Hono has built-in middleware, custom middleware, third-party middleware, and helpers. Batteries included.
icon title details
馃槂
Delightful DX
Super clean APIs. First-class TypeScript support. Now, we've got "Types".
<script setup> // Heavily inspired by React // reactjs/react.dev#6817 import { onMounted } from 'vue' onMounted(() => { var preferredKawaii try { preferredKawaii = localStorage.getItem('kawaii') } catch (err) {} const urlParams = new URLSearchParams(window.location.search) const kawaii = urlParams.get('kawaii') const setKawaii = () => { const images = document.querySelectorAll('.VPImage.image-src') images.forEach((img) => { img.src = '/images/hono-kawaii.png' img.alt = 'A Kawai Version of the Hono Logo. The first "o" is replaced with a flame, with japanese characters in the bottom right, and a JSX fragment closing tag above the flame.' img.classList.add("kawaii") }) } if (kawaii === 'true') { try { localStorage.setItem('kawaii', true) } catch (err) {} console.log('kawaii mode enabled. logo credits to @sawaratsuki1004 via https://github.com/SAWARATSUKI/KawaiiLogos'); setKawaii() } else if (kawaii === 'false') { try { localStorage.removeItem('kawaii', false) } catch (err) {} const images = document.querySelectorAll('.VPImage.image-src') images.forEach((img) => { img.src = '/images/code.webp' img.classList.remove("kawaii") }) } else if (preferredKawaii) { setKawaii() } }) </script>