From a81de161b9953f7ce628f612aed62b90c1750b7c Mon Sep 17 00:00:00 2001 From: Paul Mulligan Date: Sun, 12 Apr 2026 19:50:58 -0400 Subject: [PATCH] feat: add response compression middleware to Node.js project template Add Hono's compress() middleware to the Node.js template in setup-project.sh for automatic gzip/brotli compression of API responses. Add a comment to the Cloudflare Workers template explaining that compression is handled at the edge and no middleware is needed. Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/setup-project.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/setup-project.sh b/scripts/setup-project.sh index 82faf79..47e88f8 100644 --- a/scripts/setup-project.sh +++ b/scripts/setup-project.sh @@ -174,6 +174,8 @@ import { cors } from 'hono/cors'; import { logger } from 'hono/logger'; import { requestId } from 'hono/request-id'; import { secureHeaders } from 'hono/secure-headers'; +// Note: Response compression is handled automatically by Cloudflare's edge network. +// No compress() middleware is needed for Workers deployments. type Bindings = { DB: D1Database; @@ -207,6 +209,7 @@ SRCEOF else write_file "$API_DIR/src/index.ts" << 'SRCEOF' import { Hono } from 'hono'; +import { compress } from 'hono/compress'; import { cors } from 'hono/cors'; import { logger } from 'hono/logger'; import { requestId } from 'hono/request-id'; @@ -217,6 +220,7 @@ const app = new Hono(); app.use('*', logger()); app.use('*', cors()); +app.use('*', compress()); app.use('*', secureHeaders()); app.use('*', requestId());