# Route Definitions

> 

Vuloom exposes a small set of route definition shapes.

## `app/app.config.ts`

Defines static app configuration, currently focused on app-level middleware registration.

## `app/pages/**/middleware.ts`

Defines app-route middleware name arrays for:

- `app/pages/**/middleware.ts`

## `server/routes/**/_middleware.ts`

Defines server-route middleware arrays for a directory scope.

## `server/routes/**/*.ts`

Defines a raw HTTP route with a default export object.

```ts
export default {
  middleware: ['server-trace'],
  async GET(context) {
    return Response.json({ ok: true })
  },
  async handler(context) {
    return new Response('Method not allowed', { status: 405 })
  }
}
```

Supported method keys are:

- `GET`
- `POST`
- `PUT`
- `PATCH`
- `DELETE`
- `HEAD`
- `OPTIONS`

Use `handler()` as a fallback for methods you do not implement explicitly.
