/Wiki/sources/honojs__hono/2026/https-hono-dev-llms-full-txt-extending-the-conte-d89ef1e34bde-extending-the-context-in-middleware-s0118-c0000.md
Extending the Context in Middleware - hono-docs
Extending the Context in Middleware Source evidence: /Sources/raw/honojs hono/honojs hono.md Canonical citation: https://hono.dev/llms full.txt extending the...
Extending the Context in Middleware
Source evidence: /Sources/raw/honojshono/honojshono.md Canonical citation: https://hono.dev/llms-full.txt#extending-the-context-in-middleware
Summary
To extend the context inside middleware, use c.set. You can make this type-safe by passing a { Variables: { yourVariable: YourVariableType } } generic argument to the createMiddleware function. ```ts import { createMiddleware } fro...
Content
To extend the context inside middleware, use c.set. You can make this type-safe by passing a { Variables: { yourVariable: YourVariableType } } generic argument to the createMiddleware function.
import { createMiddleware } from 'hono/factory'
const echoMiddleware = createMiddleware<{
Variables: {
echo: (str: string) => string
}
}>(async (c, next) => {
c.set('echo', (str) => str)
await next()
})
app.get('/echo', echoMiddleware, (c) => {
return c.text(c.var.echo('Hello!'))
})