AzuraJS Logo
AzuraJSBeta

Welcome to AzuraJS

A modern, fast, and TypeScript-first web framework for Node.js and Bun

Welcome to AzuraJS ⚑

AzuraJS is a modern, high-performance web framework for Node.js and Bun that brings the power of TypeScript decorators to backend development. Build elegant, type-safe APIs with a clean and intuitive syntax.

✨ Why AzuraJS?

🎯 Decorator-Based

Express-style syntax enhanced with TypeScript decorators for clean, readable code

πŸš€ High Performance

Built for speed with minimal overhead and zero external dependencies

πŸ“¦ Zero Dependencies

Lightweight and efficient - no bloated node_modules

πŸ”§ TypeScript First

Full type safety and IntelliSense support out of the box

πŸ”Œ Middleware Support

Express-compatible middleware system for easy integration

βš™οΈ Highly Configurable

File-based configuration with TypeScript, JSON, or YAML support

🎨 Key Features

  • Parameter Injection - @Body, @Query, @Param, @Req, @Res, and more
  • Built-in Validation - DTO and schema validation with full type safety
  • Cookie Handling - Built-in cookie parser and serializer
  • CORS Support - Configurable CORS plugin ready to use
  • Rate Limiting - Protect your API from abuse with built-in rate limiting
  • Cluster Mode - Multi-core support for production workloads
  • Smart Logging - Environment-aware request/response logging
  • Error Handling - Structured error handling with HttpError class

πŸš€ Quick Example

import { 
  AzuraClient, 
  Controller, 
  Get, 
  Post, 
  Body, 
  Param,
  applyDecorators 
} from "azurajs";

@Controller("/api/users")
class UserController {
  @Get()
  getAllUsers() {
    return { users: ["Alice", "Bob"] };
  }

  @Get("/:id")
  getUser(@Param("id") id: string) {
    return { id, name: `User ${id}` };
  }

  @Post()
  createUser(@Body() data: any) {
    return { id: Date.now(), ...data };
  }
}

const app = new AzuraClient();
applyDecorators(app, [UserController]);
await app.listen(3000);

πŸ“š What's Next?

🌟 Community

AzuraJS is open source and welcomes contributions! Join our community:


Ready to build something amazing? Let's get started! πŸŽ‰

On this page