Lightweight multi-runtime framework for REST and web APIs
npm install yasui 


Ship production-ready REST APIs in minutes 🐿️
•
Documentation 📖
Yasui (meaning "easy" in Japanese) is a lightweight multi-runtime framework built on Web Standards and pushed with SRVX, that brings the developer experience of modern frameworks without the complexity. It runs on Node.js, Deno, and Bun, providing the structure you need with just the features you'll actually use.
``sh`
npm install yasui
`ts
import yasui, { Controller, Get } from 'yasui';
@Controller('/')
export class AppController {
@Get('/')
hello() {
return { message: 'Hello World!' };
}
}
yasui.createServer({
controllers: [AppController]
});
`
- Configuration - Server setup and global options
- Controllers - Define routes with decorators and automatic type casting
- Dependency Injection - Constructor and method-level injection with flexible scopes
- Error Handling - Automatic error catching without try/catch blocks
- Logging - Built-in timing and color-coded logging service
- Middlewares - Apply at multiple levels with same decorators as controllers
- Pipes - Transform and validate request data automatically
- Swagger Doc. - Generate OpenAPI docs with flexible decorators
Production-ready middlewares and utilities for YasuiJS:
- @yasui/cors (JSR) - CORS middleware
- @yasui/rate-limit (JSR) - Rate limiting middleware
- @yasui/validation (JSR) - Automatic DTO validation middleware
YasuiJS adopts a class-based, object-oriented approach with decorators, bringing significant architectural advantages:
Contributions are welcome! Please feel free to submit issues and pull requests.
Please use npm run commit` to standardize commits nomenclature.
This project is licensed under the GNU Affero General Public License v3.0 or later. See the LICENSE file for details.