Neue Skills, Referenzen & OpenWiki-Doku integriert
Umfangreiche Erweiterung der Skill-Bibliothek: Neue Skills für Humanisierung (Englisch/PT-BR), Design-Validierung, AI-SEO und Coolify-Deployment inkl. Regelwerke, Presets, Pattern-Referenzen, Testfälle und Automatisierungsskripte. Zusätzliche Skills für Revenue-Centric Design, Pier Cloud, OKF, Lebenslauf- und LinkedIn-Optimierung sowie zahlreiche Referenzdateien, Checklisten und YAML/JSON/Markdown-Templates. Einführung einer vollständigen OpenWiki-Dokumentation mit Architektur-, Domain- und Workflow-Beschreibungen, zentralem Index und automatisierten Updates. Modularer Aufbau, restriktive Lizenzen und umfassende Qualitäts- und Evaluationsmechanismen für alle neuen Inhalte.
This commit is contained in:
66
.github/skills/design-md-validator/references/linting-rules.md
vendored
Normal file
66
.github/skills/design-md-validator/references/linting-rules.md
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
# Linting Rules — @google/design.md
|
||||
|
||||
> Generated against npm 0.3.0 + main as of 2026-07-18. Authoritative source at
|
||||
> runtime: `npx @google/design.md spec --rules-only`.
|
||||
|
||||
The linter runs nine rules against a parsed DESIGN.md in the published npm
|
||||
0.3.0 release; a tenth rule (`token-like-ignored`) has merged on main and
|
||||
ships in the next release. Each rule produces findings at a fixed severity
|
||||
level.
|
||||
|
||||
## Rules Table
|
||||
|
||||
| Rule | Severity | What it checks |
|
||||
|---|---|---|
|
||||
| `broken-ref` | error | Token references (`{colors.primary}`) that don't resolve to any defined token |
|
||||
| `missing-primary` | warning | Colors are defined but no `primary` color exists — agents will auto-generate one |
|
||||
| `contrast-ratio` | warning | Component `backgroundColor`/`textColor` pairs below WCAG AA minimum (4.5:1) |
|
||||
| `orphaned-tokens` | warning | Color tokens defined but never referenced by any component |
|
||||
| `token-summary` | info | Summary of how many tokens are defined in each section |
|
||||
| `missing-sections` | info | Optional sections (spacing, rounded) absent when other tokens exist |
|
||||
| `missing-typography` | warning | Colors are defined but no typography tokens exist — agents will use default fonts |
|
||||
| `section-order` | warning | Sections appear out of the canonical order defined by the spec |
|
||||
| `unknown-key` | warning | A top-level YAML key looks like a typo of a known schema key (e.g. `colours:` → `colors:`) |
|
||||
| `token-like-ignored` | warning | **Next release (on main since 2026-06-15, not in npm 0.3.0).** Warns when a top-level YAML key looks like a design-token map but is not part of the recognized export schema and will be silently ignored |
|
||||
|
||||
## Section Order (canonical)
|
||||
|
||||
Sections use `##` headings. They can be omitted, but those present must appear
|
||||
in this order:
|
||||
|
||||
| # | Section | Aliases |
|
||||
|---|---|---|
|
||||
| 1 | Overview | Brand & Style |
|
||||
| 2 | Colors | |
|
||||
| 3 | Typography | |
|
||||
| 4 | Layout | Layout & Spacing |
|
||||
| 5 | Elevation & Depth | Elevation |
|
||||
| 6 | Shapes | |
|
||||
| 7 | Components | |
|
||||
| 8 | Do's and Don'ts | |
|
||||
|
||||
## Consumer Behavior for Unknown Content
|
||||
|
||||
| Scenario | Behavior |
|
||||
|---|---|
|
||||
| Unknown section heading | Preserve; do not error |
|
||||
| Unknown color token name | Accept if value is valid |
|
||||
| Unknown typography token name | Accept as valid typography |
|
||||
| Unknown component property | Accept with warning |
|
||||
| Duplicate section heading | Error; reject the file |
|
||||
|
||||
## Exit Codes
|
||||
|
||||
- `0` — No errors (warnings/info may be present)
|
||||
- `1` — Errors found (file is invalid per spec)
|
||||
|
||||
## Programmatic API
|
||||
|
||||
```typescript
|
||||
import { lint } from '@google/design.md/linter';
|
||||
|
||||
const report = lint(markdownString);
|
||||
console.log(report.findings); // Finding[]
|
||||
console.log(report.summary); // { errors, warnings, infos }
|
||||
console.log(report.designSystem); // Parsed DesignSystemState
|
||||
```
|
||||
156
.github/skills/design-md-validator/references/token-schema.md
vendored
Normal file
156
.github/skills/design-md-validator/references/token-schema.md
vendored
Normal file
@@ -0,0 +1,156 @@
|
||||
# Token Schema — DESIGN.md Spec (version alpha)
|
||||
|
||||
The YAML front matter in a DESIGN.md file contains machine-readable design
|
||||
tokens. These are the normative values that agents use to generate code.
|
||||
|
||||
## Top-Level Schema
|
||||
|
||||
```yaml
|
||||
version: <string> # optional, current: "alpha"
|
||||
name: <string> # required
|
||||
description: <string> # optional
|
||||
colors:
|
||||
<token-name>: <Color>
|
||||
typography:
|
||||
<token-name>: <Typography>
|
||||
rounded:
|
||||
<scale-level>: <Dimension>
|
||||
spacing:
|
||||
<scale-level>: <Dimension | number>
|
||||
components:
|
||||
<component-name>:
|
||||
<token-name>: <string | token reference>
|
||||
```
|
||||
|
||||
## Token Types
|
||||
|
||||
| Type | Format | Example |
|
||||
|---|---|---|
|
||||
| Color | Any CSS color (hex, `rgb()`, `oklch()`, named) | `"#1A1C1E"`, `"oklch(62% 0.18 250)"` |
|
||||
| Dimension | number + unit (`px`, `em`, `rem`) | `48px`, `-0.02em` |
|
||||
| Token Reference | `{path.to.token}` | `{colors.primary}` |
|
||||
| Typography | object with font properties | See below |
|
||||
|
||||
## Typography Object
|
||||
|
||||
```yaml
|
||||
typography:
|
||||
h1:
|
||||
fontFamily: Public Sans
|
||||
fontSize: 3rem
|
||||
fontWeight: 700
|
||||
lineHeight: 1.2
|
||||
letterSpacing: -0.02em
|
||||
fontFeature: "ss01" # optional
|
||||
fontVariation: "wght 700" # optional
|
||||
body-md:
|
||||
fontFamily: Public Sans
|
||||
fontSize: 1rem
|
||||
fontWeight: 400
|
||||
lineHeight: 1.5
|
||||
label-caps:
|
||||
fontFamily: Space Grotesk
|
||||
fontSize: 0.75rem
|
||||
fontWeight: 500
|
||||
letterSpacing: 0.05em
|
||||
```
|
||||
|
||||
Required fields per entry: `fontFamily`, `fontSize`.
|
||||
Optional fields: `fontWeight`, `lineHeight`, `letterSpacing`, `fontFeature`, `fontVariation`.
|
||||
|
||||
## Colors
|
||||
|
||||
```yaml
|
||||
colors:
|
||||
primary: "#1A1C1E"
|
||||
secondary: "#6C7278"
|
||||
tertiary: "#B8422E"
|
||||
neutral: "#F7F5F2"
|
||||
on-tertiary: "#FFFFFF" # contrast pair for tertiary
|
||||
```
|
||||
|
||||
The `primary` color is expected by the linter. Its absence triggers a
|
||||
`missing-primary` warning.
|
||||
|
||||
## Rounded (border-radius scale)
|
||||
|
||||
```yaml
|
||||
rounded:
|
||||
sm: 4px
|
||||
md: 8px
|
||||
lg: 16px
|
||||
```
|
||||
|
||||
## Spacing
|
||||
|
||||
```yaml
|
||||
spacing:
|
||||
sm: 8px
|
||||
md: 16px
|
||||
lg: 32px
|
||||
```
|
||||
|
||||
## Components
|
||||
|
||||
Components map a name to a group of sub-token properties:
|
||||
|
||||
```yaml
|
||||
components:
|
||||
button-primary:
|
||||
backgroundColor: "{colors.tertiary}"
|
||||
textColor: "{colors.on-tertiary}"
|
||||
rounded: "{rounded.sm}"
|
||||
padding: 12px
|
||||
button-primary-hover:
|
||||
backgroundColor: "{colors.tertiary-container}"
|
||||
```
|
||||
|
||||
### Valid Component Properties
|
||||
|
||||
`backgroundColor`, `textColor`, `typography`, `rounded`, `padding`, `size`,
|
||||
`height`, `width`.
|
||||
|
||||
### Variants
|
||||
|
||||
Hover, active, pressed states are separate entries with a related key name:
|
||||
`button-primary-hover`, `button-primary-active`.
|
||||
|
||||
## Token References
|
||||
|
||||
References use curly braces with dot notation:
|
||||
|
||||
```yaml
|
||||
components:
|
||||
card:
|
||||
backgroundColor: "{colors.neutral}" # resolves to #F7F5F2
|
||||
rounded: "{rounded.md}" # resolves to 8px
|
||||
```
|
||||
|
||||
Broken references (pointing to undefined tokens) trigger a `broken-ref` error.
|
||||
|
||||
Since npm 0.3.0 (PR #103), token groups support nested sub-levels in the
|
||||
frontmatter — e.g. `colors.brand.primary` — and references use the full
|
||||
dotted path to the leaf token: `{colors.brand.primary}`.
|
||||
|
||||
## File Structure Summary
|
||||
|
||||
```
|
||||
--- ← YAML front matter start
|
||||
name: "My Design System"
|
||||
colors: ...
|
||||
typography: ...
|
||||
rounded: ...
|
||||
spacing: ...
|
||||
components: ...
|
||||
--- ← YAML front matter end
|
||||
|
||||
## Overview ← Markdown prose sections
|
||||
...
|
||||
## Colors
|
||||
...
|
||||
## Typography
|
||||
...
|
||||
```
|
||||
|
||||
The tokens are the normative values. The prose provides context for how to
|
||||
apply them.
|
||||
Reference in New Issue
Block a user