About Carabao.js
A TypeScript-first MVC framework built on Express that gets out of your way.
What is Carabao.js?
Carabao.js is a lightweight MVC web framework for Node.js, built on top of Express. It provides a clean project structure, CLI scaffolding, and full TypeScript support — so you can focus on writing your application logic instead of wiring up boilerplate.
The name "Carabao" comes from the carabao — the Filipino water buffalo, a trusted work animal known for strength and reliability. Like its namesake, Carabao.js is built to carry the heavy lifting of project setup so you don't have to.
Use Cases
Onboarding new projects
Scaffolding a new API or web app takes seconds. The CLI generates a complete MVC structure with routes, controllers, middlewares, environment config — all ready to build on.
API documentation generation
With clearly defined routes and controllers, your project stays organized and easy to document. The structure makes it simple to generate API docs from your route definitions.
Test setup & integration
The generated project comes with Jest configured out of the box. Write integration tests against your Express app immediately — no additional setup required.
Legacy codebase discovery
When working with existing Express projects, Carabao.js's structured approach helps you organize and discover routes, controllers, and middleware patterns more easily than flat Express setups.
Benefits
- Speed — Go from idea to running server in under a minute.
- Consistency — Every project follows the same structure, making it easy to switch between projects.
- Type safety — Full TypeScript support means fewer runtime errors and better editor tooling.
- Express compatible — Use any Express middleware or ecosystem library without friction.
- Zero lock-in — The generated project is standard TypeScript/Express. You can evolve away from the framework if needed.