Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
5e9fe31
feat: initial commit for ds-docs
cesaroeduardo Mar 7, 2026
ed163b8
feat: search engine and playground
cesaroeduardo Mar 8, 2026
f445850
feat: i18n and component status
cesaroeduardo Mar 8, 2026
1712d42
feat: governance, validations and analytics
cesaroeduardo Mar 8, 2026
e6798d6
feat: i18n content and versioning
cesaroeduardo Mar 9, 2026
d48c1a8
chore: layout playground
cesaroeduardo Mar 9, 2026
ce958cd
chore: styles docs
cesaroeduardo Mar 9, 2026
75a87cd
feat: component tabs
cesaroeduardo Mar 9, 2026
2cc3756
chore: styles
cesaroeduardo Mar 9, 2026
61b9d59
fix: componentes in usage
cesaroeduardo Mar 9, 2026
8643adc
feat: adjustments in style
cesaroeduardo Mar 9, 2026
55543c3
feat: code highlight in code examples
cesaroeduardo Mar 10, 2026
7573c73
feat: tokens and foundations page start
cesaroeduardo Mar 10, 2026
9d04b72
fix: languages structure pages
cesaroeduardo Mar 10, 2026
c0460a2
fix: .astro ignore
cesaroeduardo Mar 10, 2026
b6ee761
Revert "fix: .astro ignore"
cesaroeduardo Mar 10, 2026
e26d679
fix: language components
cesaroeduardo Mar 10, 2026
847c983
feat: dark / light playground
cesaroeduardo Mar 10, 2026
1b39fcd
fix: css to tailwind
cesaroeduardo Mar 10, 2026
5de572c
fix: icons svg to icons
cesaroeduardo Mar 10, 2026
7385d01
fix: icon integration doc
cesaroeduardo Mar 10, 2026
2fe617c
fix: icon size theme
cesaroeduardo Mar 10, 2026
d023784
fix: build error
cesaroeduardo Mar 10, 2026
99b2671
fix: build errors
cesaroeduardo Mar 10, 2026
99aadb3
Merge branch 'ds-docs-platform' of https://github.com/aziontech/webki…
cesaroeduardo Mar 10, 2026
cc9f33c
fix: search
cesaroeduardo Mar 10, 2026
6928e3a
feat: add motion.dev to docs
cesaroeduardo Mar 10, 2026
896d627
feat: pattern and block pages, icons too
cesaroeduardo Mar 10, 2026
7221867
feat: button generated by figma
cesaroeduardo Mar 12, 2026
435cf3e
Merge branch 'main' into ds-docs-platform
cesaroeduardo Mar 12, 2026
63b37c7
feat: initial script extract components from webkit
cesaroeduardo Mar 12, 2026
8a80040
Merge branch 'main' into ds-docs-platform
cesaroeduardo Mar 12, 2026
4d00467
fix: components renderization
cesaroeduardo Mar 12, 2026
75fc8ec
fix: azion theme import
cesaroeduardo Mar 12, 2026
0d20470
fix: theme issues
cesaroeduardo Mar 12, 2026
82dea2f
fix: theme adjustments
cesaroeduardo Mar 13, 2026
2311889
fix: theme issues in ds-docs
cesaroeduardo Mar 13, 2026
53e01d9
fix: playground theme switch
cesaroeduardo Mar 13, 2026
6516c80
fix: general adjustments
cesaroeduardo Mar 13, 2026
d12059e
fix: playground not affect components
cesaroeduardo Mar 13, 2026
e291ece
Merge remote-tracking branch 'origin/no-issue-fix-semantic-tokens' in…
cesaroeduardo Mar 13, 2026
77c4c68
fix: theme + ds docs
cesaroeduardo Mar 13, 2026
d26d48a
chore: deleted ds-docs plan
cesaroeduardo Mar 13, 2026
63011cb
chore: gitignore + readme update
cesaroeduardo Mar 13, 2026
d6af43f
chore(ds-docs): stop tracking generated and search index files
cesaroeduardo Mar 13, 2026
4b64c3b
chore: update homepage docs
cesaroeduardo Mar 13, 2026
5785d5a
chore: ordenação semantic tokens
cesaroeduardo Mar 13, 2026
e2300ff
fix: update pnpm
cesaroeduardo Mar 13, 2026
aa4bc65
fix: component coverage check
cesaroeduardo Mar 13, 2026
5fa51f3
fix: coverage ignore docs components
cesaroeduardo Mar 13, 2026
90cb3d3
chore: point coverage test to correct component folder
cesaroeduardo Mar 13, 2026
1deb852
fix: build icons in docs
cesaroeduardo Mar 13, 2026
221208e
fix: github alerts
cesaroeduardo Mar 13, 2026
b5e5d75
fix: removed azion status mock
cesaroeduardo Mar 16, 2026
1474417
fix: preview area
cesaroeduardo Mar 16, 2026
552a6bd
fix: styles primeflex and tailwind
cesaroeduardo Mar 17, 2026
41a565c
feat: component content skill
cesaroeduardo Mar 17, 2026
a95b471
fix: update pnpm lock
cesaroeduardo Mar 17, 2026
97d36bb
feat: trigger workflow azion
cesaroeduardo Mar 17, 2026
339dc23
fix: workflow azion
cesaroeduardo Mar 17, 2026
13852f3
chore: azion configs
cesaroeduardo Mar 17, 2026
94d62a3
fix: azion deploy
cesaroeduardo Mar 18, 2026
b53396b
Merge branch 'main' into ds-docs-platform
cesaroeduardo Mar 18, 2026
a302713
chore: added new components
cesaroeduardo Mar 20, 2026
93590a9
Merge branch 'main' into ds-docs-platform
cesaroeduardo Mar 20, 2026
a6d4613
refactor(tokens): simplify semantic token names
isaquebock Mar 23, 2026
481957d
refactor(tailwind): update theme to use simplified CSS variable names
isaquebock Mar 23, 2026
2fcf6ca
feat(tailwind): add semantic plugins for colors, texts and spacing
isaquebock Mar 23, 2026
0a142c1
feat(package): add exports for semantic plugins
isaquebock Mar 23, 2026
3804ef9
refactor(preset): update to use simplified CSS variable names
isaquebock Mar 23, 2026
5d8aa67
docs: update README with new CSS variable names
isaquebock Mar 23, 2026
fd695ff
Merge branch 'main' into ds-docs-platform
cesaroeduardo Mar 23, 2026
0517b9f
chore: new build
cesaroeduardo Mar 23, 2026
14a3cd6
Merge remote-tracking branch 'origin/refactor-theme' into ds-docs-pla…
cesaroeduardo Mar 23, 2026
23e83da
fix: full token text
cesaroeduardo Mar 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
91 changes: 91 additions & 0 deletions .cursor/skills/webkit-component-scaffold/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
---
name: webkit-component-scaffold
description: Scaffolds webkit component docs (MDX, API, playground registry) and fills Playground previews with example data. Use when scaffolding or updating component documentation, adding new webkit components to ds-docs, or when previews (dropdown, checkbox, selector, etc.) need placeholder, description, or options filled so they do not render empty.
---

# Webkit Component Scaffold with Preview Examples

## Quick start

From repo root, run the full pipeline (scaffold + preview examples):

```bash
cd apps/ds-docs && pnpm build:scaffold:full
```

This:

1. Discovers components in `packages/webkit/src/core` and `packages/webkit/src/components`
2. Extracts API (props, events, slots) via `scripts/extractComponentApi.ts`
3. Writes `src/generated/component-api/<slug>.json` and `src/generated/component-props/<slug>.json`
4. Scaffolds `src/content/v1/{en,pt}/components/<slug>.mdx` (skipped if exists unless `--force`)
5. Generates `src/generated/playground-registry.ts`
6. Patches component-props JSON with example defaults so previews show labels, placeholders, descriptions, and options

Scaffold only (no preview examples):

```bash
cd apps/ds-docs && pnpm build:scaffold
```

Preview examples only (after scaffold already ran):

```bash
cd apps/ds-docs && pnpm build:preview-examples
```

## Adding a new component

1. Add the Vue component under `packages/webkit/src/core` or `packages/webkit/src/components` (one folder per component, with an `index.vue` or named `.vue` file).
2. Ensure the package export exists in `packages/webkit/package.json` for that path.
3. Run from `apps/ds-docs`: `pnpm build:scaffold:full`.
4. If the new component has props that still render empty, extend example data (see below).

## Extending example data

Example defaults are applied by `scripts/generatePreviewExamples.ts`.

**Prop name heuristics** — Apply to any component when the prop has an empty default:

| Prop name | Example value |
|-----------|----------------|
| `label` | `"Label"` |
| `placeholder` | `"Type here..."` |
| `description` | `"Brief description of the field."` |
| `title` | `"Title"` |
| `subtitle` | `"Subtitle"` |
| `helpText` | `"This is a help text."` |
| `nameField` | `"example-field"` |
| `nameId` | `"example-id"` |
| `emptyMessage` | `"No available options"` |
| `emptyFilterMessage` | `"No results found"` |
| `optionLabel` | `"label"` |
| `optionValue` | `"value"` |
| `icon` | `"pi pi-box"` (PrimeVue icon class for icon prop/slot) |

To add a new heuristic: edit `PROP_NAME_EXAMPLES` in `apps/ds-docs/scripts/generatePreviewExamples.ts`.

**Component-specific overrides** — For a given slug, force specific prop values (e.g. dropdown `options` as JSON array):

Edit `COMPONENT_SPECIFIC_OVERRIDES` in the same script. Keys are slugs (e.g. `form-field-dropdown`), values are `{ propName: exampleValue }`. Use JSON strings for array/object props, e.g. `options: '[{"label":"Option A","value":"a"}]'`.

After editing, run `pnpm build:preview-examples` from `apps/ds-docs`.

## Manual overrides

To fully control props for a component without running the example generator:

1. Create `apps/ds-docs/src/generated/component-props-overrides/<slug>.json`.
2. Copy the structure from `src/generated/component-props/<slug>.json` and set the desired `default` (and any other fields) per prop.
3. Run `pnpm build:scaffold` (not `build:scaffold:full`). The scaffold copies overrides on top of the props directory; the preview-examples script then still runs if you use `build:scaffold:full`, so prefer override files for one-off fixes and extend `generatePreviewExamples.ts` for reusable patterns.

## Scripts reference

| Script | Command | Purpose |
|--------|---------|---------|
| Full pipeline | `pnpm build:scaffold:full` | Scaffold + patch preview examples |
| Scaffold only | `pnpm build:scaffold` | API extraction, props JSON, MDX, registry |
| Preview examples only | `pnpm build:preview-examples` | Patch existing component-props JSON |
| Dry run (scaffold) | `pnpm build:scaffold:dry` | Scaffold with `--dry-run --verbose` |

Preview examples script flags: `--dry-run`, `--verbose` (or `-v`).
82 changes: 82 additions & 0 deletions .github/workflows/azion-deploy-ds-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: Deploy Application Design System Documentation

on:
workflow_dispatch:
inputs:
branch:
required: true
type: choice
default: main
options:
- main

jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest

permissions:
contents: write

env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Use Node.js 22.x
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'pnpm'

- name: Enable pnpm (monorepo uses workspace:*)
run: corepack enable && corepack prepare pnpm@latest --activate

- name: Install dependencies (monorepo root)
run: pnpm install --frozen-lockfile

- name: Install Azion CLI
run: |
curl -o azionlinux https://downloads.azion.com/linux/x86_64/azion
sudo mv azionlinux /usr/bin/azion
sudo chmod u+x /usr/bin/azion

- name: CLI version
run: azion --version

# Configure a personal token in your github secrets
# You may create a personal token by running 'azion create personal-token'
- name: Configure token
run: |
azion -t ${{ secrets.AZION_PERSONAL_TOKEN }}
azion whoami

- name: Azion Build
working-directory: apps/ds-docs
run: |
azion build

# You may add the --sync flag to sync local and remote resources
- name: Azion Deploy
working-directory: apps/ds-docs
run: |
azion deploy --local --skip-build

- name: Commit Azion files
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add apps/ds-docs/azion/azion.json apps/ds-docs/azion.config.* || true
# Commit only if there are staged changes
if git diff --cached --quiet; then
echo "No Azion changes to commit. Skipping push."
else
git commit -m "chore: update azion files"
# Rebase in case remote has new commits, then push
git pull --rebase origin ${{ inputs.branch }}
git push
fi
Loading
Loading