Organize your code with controller decorators.
While closures are great for simple apps, Controllers help organize larger applications.
Use the CLI to generate a controller:
bun run canx make:controller UserControllerControllers in CanxJS use decorators to define routes:
import { Controller, Get, Post } from "canxjs";
@Controller("/users")
export class UserController {
@Get("/")
async index() {
return { users: [] };
}
@Post("/")
async create(req) {
// Create user logic
return { created: true };
}
}Register your controller in src/app.ts:
import { UserController } from "./controllers/UserController";
app.routes((router) => {
router.controller("/", UserController);
});Have questions?
Join the discussion on GitHub