Appearance
Changelog
What changed in each release, for the people using the design system. The format follows Keep a Changelog; versions follow the project's versioning standard (one bump per push). The root package and @my-ds/components are versioned separately; each entry names both.
Unreleased
Nothing yet.
1.2.1 — 2026-10-25 · components 0.1.1 (unchanged)
Tag v1.2.1.
Added
- A Deploying guide: the exact Cloudflare Pages settings for each site, and how to run the browser tests against a live address (
DIARY_URL).
Changed
- The docs site is named qalim design system (it was the placeholder "My DS"), with a real home page.
Fixed
package.jsondeclared pnpm as the package manager while the project uses npm workspaces; hosting platforms read that field and picked the wrong installer.
1.2.0 — 2026-10-21 · components 0.1.1 (unchanged)
Tag v1.2.0. Live: docs · diary.
Added
apps/diary, a first app in the monorepo (Astro), built only from the system's components and tokens.- Browser tests per site: the diary is checked in both themes for landmarks and for WCAG 2.0–2.2 A/AA violations with axe.
- One command to build everything (
npm run build:all), and one gate that builds and tests every app. - This changelog and a roadmap page in the docs.
Changed
- Node is pinned to 22.23.3 (
.nvmrc) for local work, the tests and deployment.
1.1.1 — 2026-10-20 · components 0.1.1
Tags v1.1.1, components-v0.1.1.
Fixed
qs-dialogwarns in the console when it has nolabel, instead of rendering an empty, unnamed title.
Added
- The docs smoke tests check every page for a language, a single
<main>and a working skip link.
1.1.0 — 2026-10-20 · components 0.1.0
Tags v1.1.0, components-v0.1.0.
Added
- Two independent themes: Editorial (the default, formerly "Apple · print") and Industrial, reworked as its own tactical-telemetry theme.
- New components:
qs-link,qs-input(text and number, with hint, error and native validation),qs-select(customizable select where supported),qs-tag,qs-image(no layout shift, light loading). - Background patterns (
bg-grid,bg-dots,bg-lines) with optional, pausable motion; a pattern showcase and a WebGPU demo in the docs. sr-onlyutility and the Accessibility Principles page.- Browser tests (Playwright) for every docs page and every component.
qs-buttontypeprop, so a non-submit button inside a form stops submitting it.
Changed
- Dynamic text goes through the
textproperty (Elena's contract); children are static content, and their markup is kept. - Form fields share one module for labels, hints, errors and validation.
- Token CSS is generated deterministically, with a tested layer check.
Fixed
- Icon buttons and links keep their icon when they re-render.
- A dialog's title no longer leaks into the docs "On this page" outline.
- Markup inside text, headings and buttons keeps its own styles.
Removed
- The Ollama-based generators and their prompts.
qs-button'ssizeprop, which never did anything.
1.0.0 — 2026-10-17 · components 0.0.1
First commit of the system: qs-button, qs-icon, qs-dialog, qs-heading, qs-text, three-layer tokens with a Penpot export, and the VitePress docs.