Introduction
JCC Express MVC is a modern, full-featured web application framework built on Express.js that follows Laravel-style architecture patterns. It is specifically designed and optimized for the Bun runtime, offering a familiar developer experience for those coming from the Laravel ecosystem while leveraging Bun’s performance.
The framework provides routing, controllers, middleware, database access with an Eloquent-style ORM, authentication, caching, queues, events, and more. You can use it for a small API or a larger application—the same structure and tooling scale with you.
Why JCC Express MVC?
- Laravel-inspired — Patterns and conventions that feel familiar if you know Laravel.
- Bun-first — Tuned for the Bun runtime;
dev, CLI, and many workflows expect Bun. - Type-safe — TypeScript throughout, with strong typing across the stack.
- JCC Eloquent ORM — Expressive queries and models (Knex-backed JCC Eloquent).
- Modern architecture — Service container, dependency injection, and clear app boundaries.
- Developer experience — Artisan-style CLI (
artisanNode), generators, and docs-oriented layout.
Requirements
Before you begin, your environment should include:
- Bun (v1.0.0 or higher) — Required as the primary runtime and package manager for this stack.
- Node.js (v18.0.0 or higher) — Useful if you use npm for scripts or tooling alongside Bun (many teams use either or both).
- Database — MySQL 5.7+, PostgreSQL 10+, or SQLite 3.8+ (match your
.envdriver). - Redis (optional) — For cache and queue drivers when you enable them in config.
