# Installation

> 

Vuloom currently targets:

- Node `^20.19.0 || >=22.12.0`
- Vite `^8.0.0`
- Vue `^3.5.30`

## Create a project

```bash
pnpm dlx create-vuloom my-app
cd my-app
pnpm install
```

The default template includes:

- an `app/app.vue` document shell
- examples for `h()`, JSX/TSX, and Vue SFC pages
- `app/loader.ts`
- `server/routes/**/*.ts`
- generated type support via `vuloom prepare`

## Start development

```bash
pnpm prepare
pnpm dev
```

`vuloom prepare` writes `.vuloom/types/` so middleware names and route ids are available to TypeScript before the dev server starts.

## Build for production

```bash
pnpm build
pnpm start
```

`vuloom build` emits:

- client assets to `.output/public/`
- a server bundle to `.output/server/index.js`

Install Vuloom with Node `^20.19.0 || >=22.12.0` and Vite `^8.0.0`.
