🚀 Rapid Development
Get your application running in minutes with sensible defaults and automatic configuration. Focus on building features, not boilerplate.
StratusTS brings Django’s elegant architecture to the TypeScript ecosystem. If you love Django’s “batteries included” philosophy but want TypeScript’s type safety, StratusTS is built for you.
🚀 Rapid Development
Get your application running in minutes with sensible defaults and automatic configuration. Focus on building features, not boilerplate.
📁 Modular Apps
Organize your code into self-contained applications. Each app manages its own routes, controllers, and models—making code reusable and maintainable.
🛣️ Automatic Routing
Define routes in your apps and let the framework handle registration automatically. No manual route configuration needed.
🗄️ Database First
Built-in ORM support with migrations makes database management simple. Create models, generate migrations, and evolve your schema with confidence.
🎨 Template Rendering
Render dynamic HTML pages using EJS templates. Layouts, partials, and data binding work seamlessly out of the box.
⚙️ TypeScript Native
Written in TypeScript from the ground up. Enjoy full type safety, autocompletion, and compile-time error checking throughout your application.
Create a working API endpoint in seconds:
import { type ControllerType, ok } from 'stratus-ts';
export const listUsers: ControllerType = (question, reply) => { const users = [ { id: 1, name: 'Alice', email: 'alice@example.com' }, { id: 2, name: 'Bob', email: 'bob@example.com' }, ];
reply.status(ok()).json({ success: true, data: users, });};import { Router } from 'stratus-ts';import { listUsers } from './controllers';
const { routes, route } = Router();
route.get('/', listUsers);
export default routes;That’s it! Your / endpoint is ready to serve data.
StratusTS is built on three core principles:
Convention over Configuration
Sensible defaults let you build applications without endless configuration files. Customize only what you need.
App-Based Architecture
Organize code into modular apps, each handling a specific domain. Apps are self-contained, reusable, and easy to test.
Developer Experience First
From TypeScript integration to automatic route registration, every decision prioritizes developer happiness and productivity.
| Feature | StratusTS | Express | Fastify | NestJS |
|---|---|---|---|---|
| Built-in Structure | ✅ | ❌ | ❌ | ✅ |
| Automatic Routing | ✅ | ❌ | ❌ | ⚠️ |
| ORM & Migrations | ✅ | ❌ | ❌ | ⚠️ |
| Learning Curve | Easy | Easy | Easy | Steep |
| Template Rendering | ✅ | ⚠️ | ⚠️ | ⚠️ |
| TypeScript First | ✅ | ⚠️ | ⚠️ | ✅ |
| Lightweight | ✅ | ✅ | ✅ | ❌ |
# Install stratus-ts globallypnpm add -g stratus-ts# or npm install -g stratus-ts
# Create your first projectst create project my-appcd my-app
# Install dependencies and runpnpm install# or npm install
pnpm dev# or npm run devYour server is now running at http://localhost:2000! 🎉
Ready to dive deeper? Start with the introduction or jump straight to installation.