ā” High-performance TypeScript web framework - 11x faster than Express.js
Build modern full-stack applications with HyperExpress, Svelte 5, and Inertia.js.
# Create new project
npx create-laju-app my-project
cd my-project
# Setup database
npm run migrate
# Start development
npm run dev
Visit http://localhost:5555
Want AI to build everything? Use multi-agent workflow with mandatory review points:
@workflow/agents/product.md Saya mau bikin aplikasi [deskripsikan]
Agents: product.md ā tech-lead.md ā developer.md ā qa.md ā devops.md
| Framework | Requests/sec | Comparison |
|---|---|---|
| Laju | 258,611 | Baseline |
| Pure Node.js | 124,024 | 2x slower |
| Express.js | 22,590 | 11x slower |
| Laravel | 80 | 3,232x slower |
Benchmark: Simple JSON response on same hardware
Documentation is organized for progressive learning from beginner to advanced.
app/
āāā handlers/ # Request handlers (domain-based)
āāā middlewares/ # Auth, rate limiting, CSRF
āāā services/ # DB, Mailer, Storage, Cache
āāā repositories/ # Database query layer
āāā validators/ # Input validation
frontend/
āāā src/
ā āāā Pages/ # Svelte/Inertia pages
ā āāā Components/ # Reusable components
ā āāā app.js # Main entry point
ā āāā index.js # Secondary entry point
ā āāā index.css # TailwindCSS
templates/ # Eta templates (SSR)
āāā index.html # Landing page template
āāā inertia.html # Inertia.js base template
āāā partials/ # Template partials
routes/ # Route definitions
migrations/ # Database migrations
commands/ # CLI commands
tests/ # Unit & integration tests
docs/ # Documentation
benchmark/ # Performance benchmarks
public/ # Static assets
storage/ # Local storage
data/ # SQLite databases
type/ # TypeScript definitions
# Development
npm run dev # Start dev server (Vite + Nodemon)
# Production
npm run build # Build for production
node build/server.js # Run production server
# Database
npm run migrate # Run all migrations
npm run migrate:down # Rollback last migration
npm run migrate:down 3 # Rollback 3 migrations
npm run migrate:down 20230514062913 # Rollback to specific migration
npm run migrate:rollback # Rollback to last batch
npm run refresh # Drop and re-migrate database
# Testing
npm run test:run # Run unit/integration tests (Vitest)
npm run test:ui # Run tests with UI
npm run test:coverage # Run tests with coverage
npm run test:e2e # Run E2E tests (Playwright)
npm run test:e2e:ui # Run E2E tests with UI
npm run test:e2e:debug # Run E2E tests in debug mode
# Code Generation
npx tsx commands/native/MakeController.ts UserController # Generate controller
npx tsx commands/native/MakeCommand.ts CustomCommand # Generate command
npx tsx commands/native/MakeHandler.ts UserHandler # Generate handler
npx tsx commands/native/MakeMiddleware.ts AuthMiddleware # Generate middleware
npx tsx commands/native/MakeRepository.ts UserRepository # Generate repository
npx tsx commands/native/MakeValidator.ts AuthValidator # Generate validator
| Layer | Technology |
|---|---|
| Server | HyperExpress v6.17 |
| Database | BetterSQLite3 + Kysely |
| Frontend | Svelte 5 + Inertia.js |
| Styling | TailwindCSS 4 |
| Build | Vite |
| Templates | Eta |
| Language | TypeScript 6.0 |
Maulana Shalihin - [email protected]
MIT License