Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introduce Hono CLI
Search
Yusuke Wada
October 18, 2025
Programming
4.4k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduce Hono CLI
Hono Conference 2025
Oct 18, 2025
Yusuke Wada
October 18, 2025
More Decks by Yusuke Wada
See All by Yusuke Wada
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
8
2.7k
Webフレームワークの ベンチマークについて
yusukebe
1
340
AI時代のUIはどこへ行く?その2!
yusukebe
22
8.9k
Dynamic Workersについて
yusukebe
2
840
飯MCP
yusukebe
0
790
へんな働き方
yusukebe
6
3.2k
Cap'n Webについて
yusukebe
0
460
OSS開発者の憂鬱
yusukebe
19
37k
r2-image-worker
yusukebe
1
340
Other Decks in Programming
See All in Programming
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
410
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
270
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
4
1.4k
私なりのハーネスエンジニアリング ~独自の言語処理系の開発を通して~
seosoft
0
140
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
3
1.3k
SODA - FACT BOOK(JP)
sodainc
1
40k
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
230
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.2k
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
140
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2k
flutter_test のその先へ — Flutter アプリの LLM 機能に「評価」という品質保証を
kosukesaigusa
0
140
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
250
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
550
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
870
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
320
Mind Mapping
helmedeiros
1
420
Design in an AI World
tapps
1
370
So, you think you're a good person
axbom
PRO
2
2.2k
Site-Speed That Sticks
csswizardry
13
1.6k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
320
Darren the Foodie - Storyboard
khoart
PRO
4
4k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
590
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
Transcript
One More Thing
We invent many things Supporting mutilplaform RPC with Types Server-side
JSX HonoX 5 Routers Many Middleware Many Helpers Built with Web Standards
Go with Idea and implementation
Today we (I and @usualoma) will ship
Hono CLI
NOT create-* NOT a command for dev&build&deploy NOT a just
wrapper of Vite
Completely new concept
CLI for Human and AI
$ hono –help
Sub commands
$ hono docs
$ hono docs [path]
$ hono docs /docs/api/routing
Wait! Only this??
Yes But for AI
Display docs with Markdown
$ hono search
$ hono search <query>
$ hono search middleware
Display docs with JSON
AI can search and read docs
$ hono search “basic auth” $ hono docs \ /docs/middleware/builtin/basic-auth
/docs/middleware/builtin/basic-auth
Next
$ hono request
$ hono request [file]
$ hono request src/index.ts
Please imagine app.request()
const res = await app.request(‘/’) GET / Response You don't
need run an actual server!
const res = await app.request(‘/’) $ hono request src/index.ts
Display the response with JSON
$ hono request \ -P /api/users \ -X POST \
-d '{"name":"Alice"}' \ src/index.ts
This means
$ hono search $ hono docs $ hono request AI
can Search docs Read docs Test apps
CLAUDE.md / AGENTS.md etc. Use the `hono` CLI for efficient
development. View all commands with `hono --help`.
Demo
None
These are for AI
Next
For Human
$ hono serve
None
$ hono serve src/index.ts http://localhost:7070
Wait! Only this??
No! —use is super cool
Please imagine app.use()
app.use(middleware) app.use(logger())
app.use(logger())
$ hono serve \ –use “logger()” \ src/index.ts
None
$ hono serve \ --use "logger()" \ --use "basicAuth({username:'foo',password:'bar'})" \
src/index.ts
404 Not Found
$ hono serve \ --use "serveStatic({root:'./'})"
$ hono serve \ --use '(c) => proxy(`https://ramen-api.dev${new URL(c.req.url).pathname}`)'
Last
$ hono optimize
$ hono optimize [entry]
Let’s talk about routers before hono optimize
RegExpRouter is one of the fastest routers in JavaScript world
The idea Routes (dynamic path) RegExp Request Buid Match
Weak points 1. Initialization is slow 2. The file size
is large
The solutions 1. LinearRouter (hono/quick) 2. PatternRouter (hono/tiny)
But I want to use RegExpRouter!
Now we introduce a new (7th) router
PreparedRegExpRouter
The idea Routes Routing information with RegExp new PreaparedRegExpRouter() Create
at preparing phase Hard code!
None
None
Benchmark with initialization
https://github.com/honojs/hono/pull/1796
None
PreparedRegExpRoute r is 16.5× faster than RegExpRouter
Back to Hono CLI
$ hono optimize will create optimized Hono for your app
What is optimized Hono?
This
None
$ hono optimize src/index.ts $ wrangler deploy dist/index.js
How small has it become??
None
Size drops from 18.0 kB to 11.14 kB (38% smaller!)
will your app fast and small $ hono optimize
That’s all
We introduce Hono CLI with 5 sub commands
1. hono docs 2. hono search 3. hono request 4.
hono serve 5. hono optimize
For Human and AI
github.com/honojs/cli
npm i @hono/cli
The end!