honojs-middleware/packages/bun-transpiler
Jonathan Haines 4d67af162f
test(workspace): upgrade to vitest v3 (#1009)
* test(workspace): upgrade to vitest v3

Fixes #1007

* chore(standard-validator): add vitest type to `tsconfig.json`

* chore: update `yarn.lock`

* chore(zod-openapi): bump `typescript`

* chore(typia-validator): make it ESM

* ci(bun-transpiler): fix Bun to v1.1.32

---------

Co-authored-by: Yusuke Wada <yusuke@kamawada.com>
2025-03-12 12:52:15 +09:00
..
src chore: add lint rule and format (#367) 2024-01-29 22:53:43 +09:00
CHANGELOG.md Version Packages (#350) 2024-01-12 05:05:32 +09:00
README.md Add Bun Transpiler middleware #344 (#345) 2024-01-08 07:03:56 +09:00
package.json test(workspace): upgrade to vitest v3 (#1009) 2025-03-12 12:52:15 +09:00
tsconfig.json Add Bun Transpiler middleware #344 (#345) 2024-01-08 07:03:56 +09:00

README.md

Bun Transpiler middleware for Hono

The Bun Transpiler middleware is a Hono middleware designed to transpile content such as TypeScript or TSX. You can place your script written in TypeScript in a directory and serve it using serveStatic. When you apply this middleware, your script will automatically be served transpiled into JavaScript code.

This middleware works only with Bun.

Usage

Installation

npm i @hono/bun-transpiler

Example

import { Hono } from 'hono'
import { serveStatic } from 'hono/bun'
import { bunTranspiler } from '@hono/bun-transpiler'

const app = new Hono()

app.get('/static/:scriptName{.+.tsx?}', bunTranspiler())
app.get('/static/*', serveStatic({ root: './' }))

export default app

Notes

  • This middleware does not have a cache feature. If you want to cache the transpiled code, use Cache Middleware or your own custom middleware.

Author

Florian Kapaun https://github.com/floriankapaun

Heavily inspired by esbuild-transpiler by Andres C. Rodriguez and Yusuke Wada.

License

MIT