Last Updated: 3/9/2026
Pretty JSON Middleware
Pretty JSON middleware enables “JSON pretty print” for JSON response body.
Adding ?pretty to url query param, the JSON strings are prettified.
// GET /
{"project":{"name":"Hono","repository":"https://github.com/honojs/hono"}}will be:
// GET /?pretty
{
"project": {
"name": "Hono",
"repository": "https://github.com/honojs/hono"
}
}Import
import { Hono } from 'hono'
import { prettyJSON } from 'hono/pretty-json'Usage
const app = new Hono()
app.use(prettyJSON()) // With options: prettyJSON({ space: 4 })
app.get('/', (c) => {
return c.json({ message: 'Hono!' })
})Options
space: number
numberNumber of spaces for indentation. The default is 2.
query: string
stringThe name of the query string for applying. The default is pretty.
force: boolean
booleanWhen set to true, JSON responses are always prettified regardless of the query parameter. The default is false.