@designtools/manifest 0.0.0-stage → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/LICENSE +21 -0
- package/README.md +174 -2
- package/dist/chunk-PQGMDEUF.js +1950 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +256 -0
- package/dist/index.d.ts +577 -0
- package/dist/index.js +70 -0
- package/package.json +73 -3
- package/schemas/rule.schema.json +31 -0
package/package.json
CHANGED
|
@@ -1,6 +1,76 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designtools/manifest",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Reads a React design system (components, variants, data-slots, examples, tokens, rules, patterns, taxonomy and brand assets) into committed JSON that docs, checks and agents read from. Deterministic CLI: build, check, diff, agents, prose-check.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": "Made by Many",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/madebymany/designtools.git",
|
|
11
|
+
"directory": "packages/manifest"
|
|
12
|
+
},
|
|
13
|
+
"homepage": "https://github.com/madebymany/designtools/tree/main/packages/manifest#readme",
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/madebymany/designtools/issues"
|
|
16
|
+
},
|
|
17
|
+
"main": "dist/index.js",
|
|
18
|
+
"types": "dist/index.d.ts",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"import": "./dist/index.js",
|
|
22
|
+
"types": "./dist/index.d.ts"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"bin": {
|
|
26
|
+
"designtools-manifest": "dist/cli.js"
|
|
27
|
+
},
|
|
28
|
+
"files": [
|
|
29
|
+
"dist",
|
|
30
|
+
"schemas",
|
|
31
|
+
"README.md",
|
|
32
|
+
"CHANGELOG.md",
|
|
33
|
+
"LICENSE"
|
|
34
|
+
],
|
|
35
|
+
"engines": {
|
|
36
|
+
"node": ">=20"
|
|
37
|
+
},
|
|
38
|
+
"keywords": [
|
|
39
|
+
"design-system",
|
|
40
|
+
"documentation",
|
|
41
|
+
"docgen",
|
|
42
|
+
"manifest",
|
|
43
|
+
"react",
|
|
44
|
+
"tailwind-variants",
|
|
45
|
+
"cva",
|
|
46
|
+
"design-tokens",
|
|
47
|
+
"data-slot",
|
|
48
|
+
"cli",
|
|
49
|
+
"deterministic"
|
|
50
|
+
],
|
|
51
|
+
"dependencies": {
|
|
52
|
+
"postcss": "^8.5.29",
|
|
53
|
+
"react-docgen-typescript": "^2.4.0",
|
|
54
|
+
"typescript": "~6.0.3"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@base-ui/react": "1.6.0",
|
|
58
|
+
"@types/node": "^24.19.1",
|
|
59
|
+
"@types/react": "^19.3.0",
|
|
60
|
+
"@types/react-dom": "^19.3.0",
|
|
61
|
+
"class-variance-authority": "^0.7.1",
|
|
62
|
+
"react": "19.2.7",
|
|
63
|
+
"react-dom": "19.2.7",
|
|
64
|
+
"tailwind-merge": "3.6.0",
|
|
65
|
+
"tailwind-variants": "3.3.1",
|
|
66
|
+
"tsup": "^8.5.1",
|
|
67
|
+
"tsx": "^4.23.15",
|
|
68
|
+
"vitest": "^4.1.11"
|
|
69
|
+
},
|
|
70
|
+
"scripts": {
|
|
71
|
+
"build": "tsup src/index.ts src/cli.ts --format esm --dts --clean",
|
|
72
|
+
"typecheck": "tsc --noEmit",
|
|
73
|
+
"test": "vitest run",
|
|
74
|
+
"cli": "tsx src/cli.ts"
|
|
75
|
+
}
|
|
6
76
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://unpkg.com/@designtools/manifest/schemas/rule.schema.json",
|
|
4
|
+
"title": "Design system rule",
|
|
5
|
+
"description": "One rule, brand or interface, in <system>/rules/<id>.rule.json. Written for people first; agents read the same file through rules.json.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["kind", "title", "statement", "status"],
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"$schema": { "type": "string" },
|
|
11
|
+
"kind": { "enum": ["brand", "interface"] },
|
|
12
|
+
"title": { "type": "string", "description": "A short name: Touch targets." },
|
|
13
|
+
"statement": { "type": "string", "description": "The rule in one or two sentences." },
|
|
14
|
+
"rationale": { "type": "string", "description": "Why it exists." },
|
|
15
|
+
"threshold": { "type": "string", "description": "The measurable line: 44 × 44 CSS px." },
|
|
16
|
+
"appliesTo": { "type": "array", "items": { "type": "string" }, "description": "Components, elements, assets or pages it governs." },
|
|
17
|
+
"exceptions": { "type": "array", "items": { "type": "string" } },
|
|
18
|
+
"tokens": { "type": "array", "items": { "type": "string" }, "description": "Tokens it rests on: --size-2xl." },
|
|
19
|
+
"status": { "enum": ["confirmed", "assumption"], "description": "Confirmed with the client, or still an assumption." },
|
|
20
|
+
"check": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"required": ["kind"],
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"properties": {
|
|
25
|
+
"kind": { "enum": ["test", "lint", "audit", "manual"] },
|
|
26
|
+
"ref": { "type": "string", "description": "The test file, lint rule or audit that proves it." },
|
|
27
|
+
"description": { "type": "string" }
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|