Skip to content

docs: add getting-started, cookbook, and slashed-build skill - #652

Merged
jackgranatowski merged 3 commits into
mainfrom
claude/slashed-ai-code-documentation-lftyz1
Jul 24, 2026
Merged

docs: add getting-started, cookbook, and slashed-build skill#652
jackgranatowski merged 3 commits into
mainfrom
claude/slashed-ai-code-documentation-lftyz1

Conversation

@jackgranatowski

@jackgranatowski jackgranatowski commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds three new documentation artifacts to improve onboarding and AI-assisted development:

  1. docs/getting-started.md — Entry point for new users: how to load SLASHED, bundle selection, minimal boilerplate, dark mode setup, rebranding in six tokens, and the core principle (never hardcode visual values).

  2. docs/cookbook.md — Task-oriented recipes for common builds: page shell, vertical rhythm, card grids, hero sections, sidebar layouts, prose articles, surfaces, buttons, interactive states, rebranding + dark-mode toggle, and local tweaks without new tokens. Every recipe is copy-paste ready.

  3. .claude/skills/slashed-build/SKILL.md — AI assistant skill that teaches the SLASHED mental model (token-first, BEM-first, classless base elements) and routes to authoritative reference docs. Includes the five core principles, build workflow, decision tree, and reference map.

Also updates:

  • docs/llm-guide.md header with pointers to getting-started and cookbook
  • README.md to link the new guides in the documentation table
  • scripts/check-doc-refs.js to include the skill directory in doc reference validation

These docs are not generated artifacts — they are hand-written, authoritative references that CI validates via check:doc-refs to ensure all token/class references are live.

Type

  • docs

Checklist

  • Conventional Commit messages (feat:, fix:, docs:, …) — enforced by commitlint
  • npm run lint:css passes (stylelint) — no CSS changes
  • npm run build rebuilds dist/ — no source changes
  • npm test passes (unit + Playwright e2e) — no code changes
  • Version references in sync if any version-related file changed — no version changes
  • LLM guide reviewed/updated if core/*.css, optional/*.css, or token-registry.json changed — no token changes; llm-guide.md updated with pointers
  • Generated artifacts regenerated, not hand-edited — all new docs are hand-written, validated by CI
  • CHANGELOG.md updated under ## [Unreleased] — user-facing docs addition
  • Breaking changes include migration docs — N/A

Notes

All token and class references in the new docs are validated by the existing check:doc-refs CI gate (extended to include .claude/skills/slashed-build/). The docs are authoritative, not generated — they live alongside the source and are kept in sync by human review and CI validation.

https://claude.ai/code/session_01Fad4UDMPgW3dBurUpkJE9d

Summary by CodeRabbit

  • Documentation
    • Added a Getting Started guide covering installation, bundle selection, theming via data-theme, rebranding with reserved color overrides, and basic HTML setup.
    • Added a Cookbook with copy-paste recipes for common layouts, cards, hero/landing sections, buttons/actions, interactive states (ARIA-ready), and dark-mode-safe styling.
    • Updated the documentation index and the LLM guide to link to the new resources, including an AI-assistant building workflow note.
    • Expanded automated documentation reference validation to include the new guidance content.

…ed-build skill)

Close the "single entry point for AI agents" gaps found auditing the LLM
docs: the token layer was complete, but an agent reading only llm-guide.md
had no install/getting-started path, no cross-links to the class-based API,
and no task-oriented recipes.

- docs/getting-started.md: install, bundle choice, boilerplate, dark mode,
  6-token rebrand, token-first rule. Multipliers framed as an advanced,
  opt-in escape hatch — not the default workflow.
- docs/cookbook.md: copy-paste task recipes (page shell, stack, card grid,
  hero, sidebar, prose, surface, buttons, states, rebrand + dark toggle).
- .claude/skills/slashed-build/SKILL.md: thin router/"brain" — mental model,
  build workflow, decision tree, and routing into the CI-gated docs. No
  duplicated token/class inventories (anti-drift).
- llm-guide.md + README: cross-link the new docs and the class-based API.
- check-doc-refs.js: scan the skill dir too, so SKILL.md's --sf-*/.sf-*
  references are drift-guarded like every other doc.

check:doc-refs and check:llm-guide both pass (17 docs scanned).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fad4UDMPgW3dBurUpkJE9d
@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1aae128d-6d5f-4b8c-b18f-4436a1d0d42e

📥 Commits

Reviewing files that changed from the base of the PR and between a8b17f0 and ebfb492.

📒 Files selected for processing (3)
  • .claude/skills/slashed-build/SKILL.md
  • docs/cookbook.md
  • docs/getting-started.md
🚧 Files skipped from review as they are similar to previous changes (3)
  • .claude/skills/slashed-build/SKILL.md
  • docs/getting-started.md
  • docs/cookbook.md

📝 Walkthrough

Walkthrough

Adds getting-started and cookbook documentation, introduces the slashed-build AI skill, links the new resources from existing guides, and expands documentation reference validation to scan the skill directory.

Changes

SLASHED documentation workflow

Layer / File(s) Summary
Onboarding and documentation navigation
docs/getting-started.md, docs/llm-guide.md, README.md
Adds installation, bundle selection, boilerplate, theming, token guidance, and links to the new documentation resources.
Copy-paste cookbook recipes
docs/cookbook.md
Documents layout, component, state, theming, and local customization recipes with SLASHED examples.
AI build skill and reference validation
.claude/skills/slashed-build/SKILL.md, scripts/check-doc-refs.js
Adds guided SLASHED build principles, workflow, references, and guardrails, while including the skill directory in documentation validation.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change set: new getting-started, cookbook, and slashed-build documentation.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/slashed-ai-code-documentation-lftyz1

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your trial has ended. Reactivate Greptile to resume code reviews.

Rewrite the skill's doc references from repo-relative paths
(../../../docs/*.md) to GitHub blob/tree URLs so the skill keeps its routing
when copied into a consumer project — the npm package ships only
docs/api-index.json, not the .md docs, so relative links would dangle. A note
in the reference map points in-repo users at the local docs/ copies.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fad4UDMPgW3dBurUpkJE9d
@jackgranatowski

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/skills/slashed-build/SKILL.md:
- Line 74: Update the “Constrain / centre page content” row to list the complete
modifier class names `.sf-container--narrow`, `.sf-container--wide`, and
`.sf-container--prose` instead of abbreviated variants, while preserving the
existing `.sf-container` reference and layout documentation link.

In `@docs/cookbook.md`:
- Around line 181-185: Update the ARIA examples in the HTML snippet: replace the
bare selected li with an element using an appropriate selectable widget role and
valid ownership context, such as an option inside a listbox, and make the
disabled button behaviorally inactive by using native disabled in addition to
aria-disabled or otherwise preventing activation. Preserve the loading example.
- Around line 8-9: Update the recipe documentation in the hero section and
interactive-states section to explicitly state that recipes using .sf-btn or
.sf-card require the full bundle. Ensure the full-bundle notice is present for
every affected recipe while preserving the existing optimal-bundle guidance for
recipes that do not use those classes.

In `@docs/getting-started.md`:
- Around line 13-14: Update the introductory statement in the getting-started
documentation to scope the no-Node and no-build-step claim to the CDN usage
path. Clarify that the npm path requires npm install and package-subpath
resolution through a package manager or bundler, while preserving the existing
distinction between the two setup paths.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 56c8e042-62f4-48eb-87bd-b282aaa77793

📥 Commits

Reviewing files that changed from the base of the PR and between 22be5bb and a8b17f0.

📒 Files selected for processing (6)
  • .claude/skills/slashed-build/SKILL.md
  • README.md
  • docs/cookbook.md
  • docs/getting-started.md
  • docs/llm-guide.md
  • scripts/check-doc-refs.js

Comment thread .claude/skills/slashed-build/SKILL.md Outdated
Comment thread docs/cookbook.md
Comment thread docs/cookbook.md
Comment thread docs/getting-started.md Outdated
Four minor doc-quality fixes from PR review:

- cookbook.md: correct the interactive-states ARIA example — wrap the
  aria-selected item in a role="listbox"/role="option" pair (a bare <li>
  cannot carry aria-selected) and use native `disabled` on the button
  (aria-disabled only exposes state, does not block activation).
- cookbook.md: add the missing "requires the full bundle" note to the hero
  and interactive-states recipes, which use .sf-btn / .sf-card.
- getting-started.md: scope the "no Node / no build step" claim to the CDN
  path; the npm path uses a package manager + bundler.
- SKILL.md: spell out the container modifier classes
  (.sf-container--narrow/--wide/--prose) instead of abbreviating them, so an
  assistant doesn't emit bare `--narrow` selectors.

check:doc-refs passes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fad4UDMPgW3dBurUpkJE9d

Copy link
Copy Markdown
Contributor Author

Addressed all four CodeRabbit review comments in ebfb492:

  • cookbook.md — ARIA example (major): wrapped the aria-selected item in a role="listbox"/role="option" pair and switched the disabled button to native disabled (kept the loading example).
  • cookbook.md — full-bundle note: added the "requires the full bundle" note to the hero and interactive-states recipes (they use .sf-btn / .sf-card).
  • getting-started.md — "no Node" claim: scoped it to the CDN path; clarified the npm path uses a package manager + bundler.
  • SKILL.md — container modifiers: spelled out .sf-container--narrow/--wide/--prose instead of the abbreviated form.

check:doc-refs passes. The "Docstring Coverage" pre-merge check isn't applicable — this PR adds documentation and one config-list entry, no new functions.


Generated by Claude Code

@jackgranatowski
jackgranatowski merged commit 849ee49 into main Jul 24, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants