Files
whynot-design/package.json
tegwick 2de30beb7b
Some checks failed
ci / check (push) Has been cancelled
ci / release (push) Has been cancelled
feat(consumer): versioned IR manifest + drift-check (WHYNOT-WP-0003 T03-T07,T09)
Make ir/ the unit of versioned downstream consumption so consuming repos can
pin a version, inspect it, and follow changes at their own pace.

- T03 ir/manifest.json: per-version inventory + diff anchor with deterministic
  sha256-over-canonicalised-JSON hashes; no-churn generatedAt; manifest schema.
- T07 ir/INDEX.md: human-readable catalog generated by make ir.
- T04 .whynot-design.lock sync-point format + lock schema.
- T05 npx @whynot/design drift: consumer drift-check (bin entry), exit 0/2/3,
  --json/--update/--manifest/--version/--lock.
- T06 CONSUMING.md guide + examples/consumer-fixture/ runnable demo; README +
  MultiFrameworkSupport cross-links; fix README version pin (@0.3.0 not @v0.3.0).
- T09 CONSUMER_CONTRACT_PARITY.md design-only note (live-UI parity deferred).

T02 (publish) and T08 (showcase, blocked on WP-0002 T11) remain wait. Repo stays
in dev mode; no outward publish performed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 19:35:45 +02:00

75 lines
2.7 KiB
JSON

{
"name": "@whynot/design",
"version": "0.3.0",
"description": "The neutral, mostly-black-and-white visual language for whynot — prototype cards, signal records, beta plans, decision documents, and any other deliberately-unfinished artefact. Ships tokens, CSS, and Lit-based web components consumable from React, Django, Vue, plain HTML, or anywhere a custom element runs.",
"private": false,
"type": "module",
"main": "./src/index.js",
"module": "./src/index.js",
"bin": {
"whynot-design": "./bin/whynot-design.mjs"
},
"exports": {
".": "./src/index.js",
"./atoms": "./src/elements/atoms.js",
"./form": "./src/elements/form.js",
"./layout": "./src/elements/layout.js",
"./chrome": "./src/elements/chrome.js",
"./icons": "./src/elements/icons.js",
"./styles/colors_and_type.css": "./src/styles/colors_and_type.css",
"./styles/components.css": "./src/styles/components.css",
"./styles": "./src/styles/colors_and_type.css",
"./tokens": "./tokens/index.json",
"./tokens/colors": "./tokens/colors.json",
"./tokens/type": "./tokens/type.json",
"./tokens/spacing": "./tokens/spacing.json",
"./adapters/django": "./adapters/django/README.md",
"./ir/*": "./ir/*",
"./assets/*": "./assets/*",
"./skill": "./SKILL.md"
},
"files": [
"src",
"bin",
"tokens",
"ir",
"assets",
"adapters",
"CONSUMING.md",
"SKILL.md",
"DesignSystemIntroduction.md",
"MultiFrameworkSupport.md",
"PUBLISHING.md",
"README.md",
"CHANGELOG.md"
],
"sideEffects": [
"**/*.css",
"./src/index.js",
"./src/elements/*.js"
],
"scripts": {
"check": "node ./scripts/check-changelog.mjs",
"test:visual": "playwright test",
"test:visual:update": "playwright test --update-snapshots",
"showcase": "npx --yes serve -l 4321 .",
"example": "npx --yes serve -l 4322 examples/whynot-control"
},
"peerDependencies": {
"lit": "^3"
},
"devDependencies": {
"@playwright/test": "^1.45.0",
"lit": "^3.2.1"
},
"keywords": ["whynot", "design-system", "wireframe", "prototype", "lit", "web-components", "django", "react"],
"repository": {
"type": "git",
"url": "git+ssh://git@gitea.coulomb.social/coulomb/whynot-design.git"
},
"publishConfig": {
"registry": "https://gitea.coulomb.social/api/packages/coulomb/npm/"
},
"license": "UNLICENSED"
}