Observed since 20 Oct, 22:00 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
@021.is/spine
Spine CLI: scaffold 021-shaped projects (spine new), add Spine features to existing repos (spine add), audit (spine doctor). Enforces STRUCTURE.md.
CLI for scaffolding 021-shaped projects and auditing existing ones.
bun add -g @021.is/spine
# or
npx @021.is/spine ...
spine new <name>Scaffold a fresh Next.js app following the Spine folder doctrine. Creates 19 files: full feature-folder skeleton + one example feature + Vitest/Playwright config + Prisma stub + Biome config + AGENTS.md + CLAUDE.md.
spine new my-app
cd my-app
bun install
bun run test
spine doctorAudit an existing repo against STRUCTURE.md. Lists every error + warning + actionable hint.
spine doctor
# Type: next-app
# ✗ [no-vitest] vitest not installed.
# → bun add -d vitest @vitest/coverage-v8
# ✗ [missing-spine-errors] @021.is/spine-errors not installed.
# → Required across every product. Run: bun add @021.is/spine-errors
# ...
Exit code 1 on any error. Use as a pre-merge sanity check or in CI.
These ideas live as GitHub issues; the CLI currently only ships new + doctor. PRs welcome.
spine add feature <name> — scaffold a feature folder skeleton inside an existing repospine add testing / spine add auth — install a Spine package + wire boilerplatespine upgrade — bump all @021.is/spine-* to latest in lockstepDownload counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
cacEnvironment{
"local_name": "cac",
"alias": false,
"peer_metadata": null
} | ^6.7.14 | runtime |
kleurEnvironment{
"local_name": "kleur",
"alias": false,
"peer_metadata": null
} | ^4.1.5 | runtime |
Source distribution
{
"shasum": "ecddac949da212aff0067e41b3a5af33cbcb3df7",
"tarball": "https://registry.npmjs.org/@021.is/spine/-/spine-0.4.0.tgz",
"fileCount": 7,
"integrity": "sha512-qG68emlo0BEwJGyLOAjOnqXf66k5MjdjlzebsiqluVN5L/xdQzRhb+tijNAby3zTbW2lvtO2aK3NGYJM4+/QkA==",
"signatures": [
{
"sig": "MEUCIQCAg8/n5/ppF7/uR/JlrfwY0Em3BgbmAYR1kRLh3dQAjwIgTWtYsVufrFwxL5cpBvqEGiharEND//zzPCaAbEfZGnk=",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 27846
}Observed since 20 Oct, 22:00 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:9b726e8b4d4da8b7739f8ab909b4faebc76b2f3feaecd1f80962203db65d7070