create-zuplo-api
v7.15.5
Published
Create Zuplo API with one command
Readme
Create Zuplo API
Create a new Zuplo API in seconds with create-zuplo-api.
Interactive
You can create a new project interactively by running:
npm create zuplo-api@latest
# or
yarn create zuplo-api
# or
pnpm create zuplo-api
# or
bunx create-zuplo-apiYou will be asked for the name of your project and a few setup options, such as the linter, formatter, and AI coding agents to configure.
Templates
Pick a built-in template with --template <name>:
| Template | What you get |
| --------------- | ----------------------------------------------------------------------------- |
| default | A sample API with routes, a developer portal, and VS Code debugging (default) |
| default-empty | The same project structure with no sample routes (same as --empty) |
| ai-gateway | A Zuplo AI Gateway: one OpenAI-compatible API in front of many AI providers |
npm create zuplo-api@latest my-gateway -- --template ai-gateway--template can't be combined with --example or --empty.
Non-interactive
You can also pass command line arguments to set up a new project non-interactively. Common options:
| Option | Description |
| ---------------------------------------------------- | -------------------------------------------------------------------------------- |
| --template <name> | Built-in template: default, default-empty, or ai-gateway |
| --empty | Initialize an empty project (same as --template default-empty) |
| -e, --example <name\|github-url> | Bootstrap from a Zuplo example or a public GitHub URL |
| --example-path <path> | Path to the example when the GitHub branch name contains a slash |
| --linter <linter> | Linter to configure: eslint, biome, oxlint, or none |
| --formatter <formatter> | Formatter to configure: prettier, biome, oxfmt, or none |
| --agents <agents> | AI coding agents to configure (claude,copilot,cursor,windsurf,codex) or none |
| --use-npm, --use-pnpm, --use-yarn, --use-bun | Package manager to bootstrap with |
| --no-install | Skip installing packages |
| --no-git | Skip initializing a git repository |
| --server-project / --no-server-project | Create (or skip creating) a linked project on portal.zuplo.com |
| --account <account-name> | Zuplo account to host the project. Implies --server-project |
| --yes | Use saved preferences or defaults without prompting |
| --reset-preferences | Reset saved preferences |
Run create-zuplo-api --help for the full list.
Why use Create Zuplo API?
create-zuplo-api allows you to create a new Zuplo API within seconds. It is
officially maintained by the creators of Zuplo, and includes a number of
benefits:
- Interactive Experience: Running
npm create zuplo-api@latest(with no arguments) launches an interactive experience that guides you through setting up a project. - Zero Dependencies: Initializing a project is as quick as one second. Create Zuplo API has zero dependencies.
- Offline Support: Create Zuplo API will automatically detect if you're offline and bootstrap your project using your local package cache.
- Support for Examples: Create Zuplo API can bootstrap your API using an
example from the Zuplo examples collection (e.g.
npx create-zuplo-api --example my-api).
Usage data
Each time it runs, create-zuplo-api sends one usage event to Zuplo. The event
includes a random ID stored on your machine, the options you chose, and your
Node.js version, operating system, CPU architecture, and package manager. To
turn this off, set ZUPLO_DO_NOT_TRACK=1. For how Zuplo handles this data, see
the Zuplo Privacy Policy.
License
create-zuplo-api is open source under the MIT License. See LICENSE.md. The
Zuplo projects and services it sets up are governed by the
Zuplo Terms of Service.
