Skip to main content
create-ship-app is the Ship CLI. One command scaffolds a pnpm + Turborepo monorepo, copies your chosen plugins into the repo, and wires a deployment target — ready to run.
npx create-ship-app@latest init resolves to the same CLI. Both run version 3.0.0.
It downloads the real template from paralect/ship, so what you scaffold is exactly what the docs describe — no abstraction layer between you and your code.

The scaffold flow

init walks you through three questions, then builds the project.
1

Pick a setup

Two shapes — see Architecture for the full picture:
  • PostgreSQL + TanStack Start — full-stack. You get apps/api (Hono + oRPC + Drizzle + PostgreSQL) and apps/web (TanStack Start), with end-to-end types flowing from the API to the client.
  • TanStack Start web-onlyapps/web only, no apps/api. Backend logic runs as type-safe server functions inside the Start server. No database, no API to maintain.
2

Choose plugins

A multiselect — space to toggle, enter to confirm. Each plugin merges into your codebase, the same way shadcn/ui adds components. See Plugins.auth-starter and admin are pre-selected for the full-stack setup. In the web-only setup, plugins that need a backend are hidden.
3

Choose a deployment target

Pick where this ships. The CLI drops the matching CI workflows and infrastructure-as-code into your repo.
A run looks like this:
Then start it:
pnpm start brings up infrastructure, runs migrations, and starts every service.

Naming the project

Pass a directory to skip the name prompt:
The CLI validates the name against npm rules and refuses to scaffold into a non-empty folder.

Skipping the deployment prompt

Pass --deployment (-d) with a shortcut to answer that question up front:

Adding plugins later

The CLI doesn’t stop at scaffold time. From inside an existing Ship project, pull a plugin into your repo:
install copies the plugin’s resources, routes and packages into your codebase — apps/api/src/resources/..., apps/web/src/routes/..., packages/... — so from then on every line is yours to edit. See Plugins for the full catalog.

Command reference