54 lines
1.9 KiB
Markdown
54 lines
1.9 KiB
Markdown
# Bootstrap: prime `whynot-design` from this seed
|
|
|
|
You're holding a zip — `whynot-design-seed.zip` — that contains a complete first commit for the `whynot-design` repository.
|
|
|
|
## Step-by-step
|
|
|
|
```sh
|
|
# 1. Unzip into your fresh whynot-design clone.
|
|
cd /path/to/whynot-design
|
|
unzip ~/Downloads/whynot-design-seed.zip
|
|
mv whynot-design-seed/* whynot-design-seed/.[!.]* .
|
|
rmdir whynot-design-seed
|
|
|
|
# 2. Sanity-check the tree.
|
|
ls -la
|
|
# Expect: README.md DesignSystemIntroduction.md SKILL.md CONTRIBUTING.md
|
|
# CHANGELOG.md package.json src/ tokens/ assets/ examples/
|
|
# .gitea/ .github/ scripts/ tests/
|
|
|
|
# 3. First commit.
|
|
git add -A
|
|
git commit -m "feat: seed whynot-design from atelier — v0.1.0"
|
|
git tag v0.1.0
|
|
git push origin main --tags
|
|
|
|
# 4. Verify the example renders.
|
|
pnpm install
|
|
pnpm example
|
|
# Open http://localhost:3000 — should show the whynot-control kit.
|
|
|
|
# 5. (Optional) Generate Playwright baselines locally.
|
|
pnpm exec playwright install --with-deps chromium
|
|
pnpm test:visual:update
|
|
git add tests/visual/__screenshots__
|
|
git commit -m "test: add initial visual-regression baselines"
|
|
git push
|
|
```
|
|
|
|
## Notes
|
|
|
|
- The `git+ssh` URL in `package.json` (`gitea.example.com/whynot/whynot-design.git`) is a placeholder. Replace with your actual Gitea host.
|
|
- The same goes for `.npmrc` and the registry URL in `.gitea/workflows/ci.yml` (commented out — uncomment when you stand up a Gitea Packages registry).
|
|
- `.gitea/workflows/ci.yml` and `.github/workflows/ci.yml` are identical. Keep whichever your forge uses and delete the other.
|
|
|
|
## After bootstrap
|
|
|
|
1. Record the bootstrap as `DEC-004` in `whynot-control/DECISIONS.md`.
|
|
2. Mention `whynot-design` in `whynot-control/SCOPE.md` as a sibling repository (out of scope for `whynot-control`, in scope for the org).
|
|
3. Add `@whynot/design` as a dependency in your first consuming prototype to close the loop.
|
|
|
|
## You can delete this file after bootstrap
|
|
|
|
It's only useful for the first push.
|