create-seed
v1.3.1
Published
Scaffold a new project from a template. Fast, portable, zero config.
Downloads
2,227
Readme
create-seed 🌱
Scaffold a new project from a template. Fast, portable, zero config.
Usage
# With bun
bun x create-seed@latest my-app -t bun-library
# With npx
npx create-seed@latest my-app -t bun-library
# With pnpx
pnpx create-seed@latest my-app -t bun-libraryOptions
Usage: create-seed [options] [name]
Scaffold a new project from a template
Arguments:
name Project name
Options:
-V, --version output the version number
-t, --template <template> Template to use (gh:owner/repo/path, https://github.com/owner/repo/tree/ref/path, or local path)
--pm <pm> Package manager (npm|pnpm|bun, default: auto-detect)
--skip-git Skip git initialization (default: false)
--skip-install Skip installing dependencies (default: false)
-d, --dry-run Dry run (default: false)
-v, --verbose Verbose output (default: false)
-h, --help display help for commandTemplates
Browse available templates at create-seed/templates.
You can also use any GitHub repo, GitHub web URL, subdirectory, or local path as a template:
# Short name (from the default registry)
bun x create-seed@latest my-app -t bun-library
# GitHub repo
bun x create-seed@latest my-app -t gh:owner/repo
# GitHub repo URL
bun x create-seed@latest my-app -t https://github.com/owner/repo
# GitHub subdirectory
bun x create-seed@latest my-app -t gh:owner/repo/path
# GitHub branch
bun x create-seed@latest my-app -t gh:owner/repo#my-branch
# GitHub tree URL
bun x create-seed@latest my-app -t https://github.com/owner/repo/tree/my-branch/path
# GitHub subdirectory on a specific branch
bun x create-seed@latest my-app -t gh:owner/repo/path#my-branch
# Local path
bun x create-seed@latest my-app -t ./my-local-templateGitHub tree URLs treat the first segment after /tree/ as the ref. If your branch or tag name contains /, use gh:owner/repo/path#ref/with/slash instead.
What it does
- Clones the template — downloads from GitHub (via giget) or copies from a local path
- Installs dependencies — auto-detects your package manager (bun/npm/pnpm)
- Initializes git —
git init+ initial commit (skips gracefully if git is not installed or not configured)
Package manager detection
create-seed auto-detects which package manager you're using based on how you ran it:
| Command | Detected PM |
|---------|-------------|
| bun x create-seed@latest | bun |
| npx create-seed@latest | npm |
| pnpx create-seed@latest | pnpm |
Override with --pm:
bun x create-seed@latest my-app -t gh:owner/repo --pm bunNO_DNA support
create-seed supports the NO_DNA convention for non-human operators.
When NO_DNA is set to a non-empty value, create-seed will never prompt interactively:
- Project name must be passed as a positional argument
- Template must be passed with
--template - Existing target directories are not overwritten (command fails instead)
Example:
NO_DNA=1 bun x create-seed@latest my-app -t bun-libraryAnalytics
Anonymous usage statistics are collected via Umami to help improve the tool. No personally identifiable information is collected.
Data collected: OS, architecture, Node version, package manager, template name, and success/failure status.
To opt out, set the DO_NOT_TRACK environment variable:
DO_NOT_TRACK=1 bun x create-seed@latest my-app -t gh:owner/repoAnalytics are also automatically disabled in CI environments.
Agent skill
This repo includes an AgentSkill for consistent usage patterns:
skills/create-seed/SKILL.md
Install/discover it with the skills CLI:
# Discover skills in this repo
bun x skills add create-seed/create-seed --list
# Install the 'create-seed' skill
bun x skills add create-seed/create-seed --skill create-seed --yesDevelopment
bun install
bun run build
bun run test
bun run lintLicense
MIT – see LICENSE.
