Scaffolding a New Project #
@lakeql/create-app is LakeQL's project scaffolding tool. It downloads a starter template, configures dependencies, and sets up your project structure.
Quick Start #
npm create @lakeql/app my-apiInteractive Mode #
When run without arguments, the CLI prompts you for:
- Project name — lowercase letters, numbers, hyphens, and underscores
- Install dependencies — yes/no
- Package manager — npm, pnpm, or yarn
npm create @lakeql/create-app@latest1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
◆ create-lakeql-app
│
◇ What is your project name?
│ my-lakeql-api
│
◇ Install dependencies?
│ Yes
│
◇ Which package manager?
│ pnpm
│
◇ Template downloaded successfully!
◇ Package.json updated!
◇ Dependencies installed!
│
└ 🎉 Project created successfully!
CLI Flags #
| Flag | Description |
|---|---|
[project-name] | Project name as positional argument (skips prompt) |
--package-manager=<pm> or -pm=<pm> | Package manager: npm, pnpm, yarn, bun |
--no-install | Skip dependency installation |
--quiet or -q | Suppress output (useful for scripts/CI) |
Examples #
1
2
3
4
5
6
7
8
9
# Non-interactive with pnpm
npx @lakeql/create-app@latest my-api --package-manager=pnpm
# Skip install for CI
npx @lakeql/create-app@latest my-api --no-install --quiet
# Short form
npx @lakeql/create-app@latest my-api -pm=yarn
What Happens #
Project Name Validation #
Project names must match the pattern: ^[a-z0-9-_]+$
- Lowercase letters, numbers, hyphens, and underscores only
- No spaces or special characters
-
The name becomes both the directory name and the
namefield inpackage.json
The scaffolding tool will exit with an error if the target directory already
exists. Choose a new name or remove the existing directory first.