# CLI reference

The CLI is shipped as `@merinaa/cli`. Two commands:

## `merinaa init <project>`

Or its npm-init alias: `npm init merinaa <project>`.

Scaffolds a new FiveM server project at `./<project>`. Produces the
entire layout described under [Getting started](./getting-started.md).

Placeholders substituted:
- `` — the folder name
- `` — a default description

## `merinaa module <name>`

Run inside a project. Scaffolds `modules/<name>/` with:

- `module.config.ts` with a pre-wired page declaration
- `server/` (module, service, controller, guard, index)
- `client/` (index, controller)
- `shared/` (types)
- `ui/pages/<Pascal>Page.tsx`

Placeholders:
- `` — lowercase-with-hyphens
- `` — PascalCase
- `` — camelCase

Follow-up prompt shows the one-line wire-up for `merinaa.config.ts`.

## Typical flow

```bash
npm init merinaa my-server
cd my-server
pnpm install

merinaa module jobs           # scaffolds modules/jobs/
# edit modules/merinaa.config.ts, add: import jobs from './jobs/module.config';
# and push `jobs` into the modules array

pnpm run build
```
