# create-uidu-app

URL: https://developers.uidu.org/docs/tools/create-uidu-app

> Scaffold a new uidu-powered Next.js app from a template.

```bash
npm create uidu-app@latest my-app
npm create uidu-app@latest my-app -- --template events
```

## Templates

| Template     | What it builds                                                                                                                                    |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `minimal`    | Landing page from a legacy CMS Project, rendered with `<PageBlocks>` (for a Site, follow the [Public website](https://developers.uidu.org/docs/paths/public-website.md) path)   |
| `events`     | Events listing + `/event/[id]` detail (`listEvents` / `getEvent`)                                                                                 |
| `stories`    | Blog listing + `/story/[id]` detail (`listStories` / `getStory`)                                                                                  |
| `donations`  | Campaigns listing + `/campaign/[id]` detail with progress bars                                                                                    |
| `custom-app` | An app uidu shows inside a Space: `<UiduAppProvider>`, data in its own Models (`public/uidu.app.json`) — see [Custom app](https://developers.uidu.org/docs/paths/custom-app.md) |

Every template ships Next.js 16 App Router, React 19, Tailwind v4 and an `.env.example`. The site
templates add a configured `src/lib/uidu.ts`; `custom-app` has no token to configure.

## Options

| Flag                     | Description                                    |
| ------------------------ | ---------------------------------------------- |
| `-t, --template <scope>` | Template (default `minimal`)                   |
| `-f, --framework <id>`   | Framework (default `next`, the only one today) |
| `--package-manager <pm>` | Override the detected package manager          |
| `--no-install`           | Skip installing dependencies                   |
| `--no-git`               | Skip `git init`                                |
| `-y, --yes`              | Accept all defaults (non-interactive)          |

The [`uidu` CLI](https://developers.uidu.org/docs/tools/cli.md) wraps it: `uidu create my-app -t events`.
