Skip to content

Roadmap & Contributions โ€‹

bunway is a community-powered project building the Bun-native, Express-compatible web toolkit we want to use. This page shows what's shipped and what's next.

Philosophy โ€‹

  • Express-compatible โ€“ same (req, res, next) signature and middleware patterns you know
  • Bun-native โ€“ built on Bun's Fetch primitives, no Node polyfills
  • Batteries included โ€“ one package for routing, middleware, sessions, security, observability
  • Community-led โ€“ we build what developers actually need
Phase 0 ยท Complete

Core MVP

Express-compatible foundation with Bun-native primitives.

  • BunRequest, BunResponse with Express-style APIs
  • Express-compatible (req, res, next) handler signature
  • Router verbs, params, sub-routers, middleware, 404 fallback
  • bunway() factory + app.listen()
  • Built-ins: errorHandler, cors, json, urlencoded, text
  • Comprehensive Bun test suite
Phase 1 ยท Complete

HTTP niceties & DX

Polished developer experience with essential middleware.

  • cookieParser() โ€“ parse/set cookies, signed cookies
  • helmet() โ€“ security headers
  • compression() โ€“ gzip/br compression
  • serveStatic() โ€“ static file serving with cache controls
Phase 2 ยท Complete

Sessions & auth

Stateful applications with sessions and authentication.

  • session() โ€“ session middleware with Memory/File stores
  • csrf() โ€“ CSRF protection
  • passport() โ€“ authentication middleware
Phase 3 ยท In Progress

Streaming & uploads

Advanced request handling for modern applications.

  • WebSocket routing (types exported)
  • Multipart/form-data streaming
  • File upload constraints (size, type filters)
  • Server-Sent Events helper
Phase 4 ยท In Progress

QoS & protection

Production-ready quality of service features.

  • rateLimit() โ€“ rate limiting with Memory store
  • Request timeouts/aborts
  • DoS protection (slowloris guards)
Phase 5 ยท Complete

Observability

Visibility into your running applications.

  • logger() โ€“ morgan-style request logging
  • Request IDs + trace propagation
  • Metrics endpoint (Prometheus)

Current focus areas โ€‹

We're actively working on:

  1. File uploads โ€“ multipart/form-data parsing with streaming support
  2. SSE helpers โ€“ Server-Sent Events for real-time applications
  3. Request timeouts โ€“ graceful handling of slow clients
  4. WebSocket routing โ€“ sugar on top of Bun.serve WebSocket support

How to contribute โ€‹

Getting started

Pick an item from the roadmap, open an issue to discuss approach, and prototype using Bun's native APIs.

  1. Pick a feature โ€“ grab something from the roadmap that interests you
  2. Open an issue โ€“ discuss the approach before diving in
  3. Prototype โ€“ build on Bun's primitives, keep it lean
  4. Test & document โ€“ Bun tests + docs updates
  5. Submit PR โ€“ we'll review and iterate together

Development workflow โ€‹

bash
bun install           # Install deps
bun run test          # Run test suite
bun run typecheck     # TypeScript check
bun run format        # Prettier formatting
bun run docs:dev      # VitePress docs (development)

bun run prepare:dist builds the publishable package.

Community promise โ€‹

bunway is built for developers who love Express patterns but want Bun's speed. We're creating the toolkit we wish existed: fast, native, expressive, and well-documented.

Jump in. Share ideas. Help us build the best Express-compatible framework for Bun.