Contributor docs for the create-magicwand monorepo.
create-magicwand is a CLI for scaffolding layered backends. This
repository contains the published CLI, the shipped project templates, and the
marketing site.
packages/cli: publishedcreate-magicwandCLIpackages/cli/templates/base: scaffold templates copied into generated appsapps/www: Next.js marketing site for the project
- Bun
1.3.10 - Node
18+
bun installRun from the repository root unless noted otherwise.
bun run checkbun run check:writebun --cwd packages/cli run buildbun --cwd packages/cli run src/index.ts my-api
bun --cwd packages/cli run src/index.ts my-api --runtime node --framework hono
bun --cwd packages/cli run src/index.ts ./apps/my-api --runtime bun --framework hono --toolchain eslint-prettier --alias "@/*"bun --cwd apps/www run devIf you change scaffold output, edit files under packages/cli/templates/**.
If you change generation behavior, inspect both packages/cli/src/** and the
template files it copies.
Current shipped base templates:
bun-hononode-hono
The npm package publishes from GitHub Actions when you push a version tag.
- Update
packages/cli/package.jsonto the release version. - Commit the release changes on
main. - Create an annotated tag that matches the package version.
- Push
mainand the tag.
git commit -m "release 0.0.4"
git tag -a v0.0.4 -m "Release v0.0.4"
git push origin main
git push origin v0.0.4The release workflow:
- installs dependencies with
bun install --frozen-lockfile - runs
bunx @biomejs/biome check . - builds the CLI from
packages/cli - verifies the git tag matches
packages/cli/package.json - publishes from
packages/cliwithbun publish
Start with CONTRIBUTING.md for setup, workflow, and expectations.
Related docs:
CONTRIBUTING.mdCODE_OF_CONDUCT.mdSECURITY.mdSUPPORT.md
MIT. See LICENSE.