Skillshare Ui Website StyleSAFE
📚 Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
Overview
📚 Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
0d9340b2ca90OBSERVED · 2026-10-08What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: skillshare-ui-website-style description: >- Skillshare frontend design system for the React dashboard (ui/) and Docusaurus website (website/). Use this skill whenever you: build or modify a dashboard page or component in ui/src/, style or layout website pages or custom CSS in website/, create new React components for the dashboard, add pages to the dashboard, fix visual bugs in either frontend, or need to know which design tokens, ss-* classes, components, or patterns to use. Covers the two dashboard styles (Clean / Playful) in light and dark, design tokens, the ss-* class system, component API, page structure, accessibility, keyboard shortcuts, and anti-patterns. Even if the user just says "fix the styling" or "add a card", use this skill to ensure consistency. metadata: targets: [claude, universal] --- Enforce the skillshare design system across the two frontends. $ARGUMENTS is the file or area being worked on. Before acting, run `python3 scripts/ai-context.py frontend`. That topic and the CSS/source files it identifies are the source of truth; this skill retains the component catalog and visual QA checklist. | Aspect | UI Dashboard (`ui/`) | Website (`website/`) | |--------|---------------------|----------------------| | Stack | React 19 + Vite + Tailwind CSS v4 | Docusaurus 3 + custom CSS | | Source of truth | `ui/src/components.css` (tokens + `ss-*` classes), `ui/src/index.css` (Tailwind mapping) | `website/src/css/custom.css` (docs), `website/src/pages/*.module.css` (homepage, features) | | Looks | Two styles, **Clean** and **Playful**, each in light and dark | Docs: clean. Homepage: hand-drawn string board | **This file names tokens and classes and says when to use them. It does not copy their values.** Colours, radii, fonts and shadows change; read them from the CSS when you need one. --- ## UI Dashboard (`ui/`) Reference pages: `ui/src/pages/TargetsPage.tsx` (list page), `ui/src/pages/HubPage.tsx` (tabs), `ui/src/pages/ResourcesPage.tsx` (list + tiles + bulk toolbar). > Design rules and the reasoning behind them: `references/STYLE_GUIDE.md`. ### Two styles, two modes Style and mode are independent, so every screen has four looks. | Axis | Values | How it is set | |------|--------|---------------| | Style | Clean, Playful (default) | `html[data-theme="playful"]`; attribute absent = Clean | | Mode | light, dark, system | `html.dark` | Set by `ui/src/context/ThemeContext.tsx`, switched in `ThemePopover.tsx`. `?theme=clean|playful|dark|light` in the URL forces one, which is handy for screenshots. All four looks come from CSS variables alone. A page that uses only tokens and `ss-*` classes gets all four for free; a hardcoded colour, radius or shadow breaks three of them. - Clean: system font, 1px hairlines, soft shadows, ink-coloured primary button. - Playful: Kalam headings, 2px ink borders, hard offset shadows, dashed separators, yellow primary, pastel accents, dot-grid background, sticky-note tiles. - Style-only markup: `.ss-only-clean` / `.ss-only-playful` (Dashboard shows a count strip in Clean and a pin board in Playful). ### Design tokens Defined per look at the top of `ui/src/components.css`. `ui/src/index.css` exposes them to Tailwind through `@theme inline`, so `text-ink-2`, `bg-surface`, `border-line` all follow the active look. | Group | Tokens | Use | |-------|--------|-----| | Surfaces | `--bg` `--side` `--surface` `--sunken` | Page, sidebar, cards and inputs, recessed headers and footers | | Text | `--ink` `--ink-2` `--ink-3` | Primary, secondary, tertiary and placeholder | | Lines | `--line` `--line-2` `--line-soft` | Frames, control borders, soft dividers | | Borders | `--sep` `--frame` `--bw` | Whole `border` values: row separator, box frame, control border width | | Action | `--pri` `--on-pri` `--accent` `--accent-bg` `--sel` `--sel-ink` | Primary button, links and focus, selected nav and menu items | | Status | `--ok` `--warn` `--bad`, each with `-bg` | Text or dot colour, plus its tinted background | | Kind | `--c-skill` `--c-agent` `--c-extra` `--c-mcp` `--c-plugin` `--c-target`, each with `-bg` | Resource-kind colour, used by `.ss-cat` | | Pastels | `--pa` `--pb` `--pc` `--pd` `--pe` | **Playful only.** Never reference outside a `[data-theme="playful"]` rule | | Type | `--f` `--fh` `--fm` `--h1` `--h2` | Body, heading (Kalam in Playful), mono, heading shorthands | | Shape | `--r-ctl` `--r-btn` `--r-box` `--r-tag` | Controls, buttons (pill), boxes, tags | | Shadow | `--sh-box` `--sh-btn` `--sh-float` `--sh-dialog` | Boxes, buttons, menus and toasts, dialogs | Tailwind names: `bg` `side` `surface` `sunken` `ink` `ink-2` `ink-3` `line` `line-2` `line-soft` `sel` `pri` `on-pri` `ok` `warn` `bad` (with `-bg`) and `link` / `link-bg` for `--accent`. **Legacy names**: `pencil`, `pencil-light`, `paper`, `paper-warm`, `muted`, `muted-dark`, `success`, `warning`, `danger`, `blue`, `info`, `accent` still resolve as aliases for markup not yet migrated. Do not use them in new code. When you touch a line that has one, replace it: | Legacy | Use | |--------|-----| | `text-pencil` | `text-ink` | | `text-pencil-light` | `text-ink-2` | | `text-muted-dark` | `text-ink-3` | | `bg-paper` / `bg-paper-warm` | `bg-bg` / `bg-side` | | `border-muted` | `border-line` | | `text-success` / `text-warning` / `text-danger` | `text-ok` / `text-warn` / `text-bad` | | `text-blue` / `text-info` | `text-link` | `ui/src/design.ts` (`radius`, `shadows`, `palette`) forwards to the same variables, for inline styles only. ### The `ss-*` classes All in `@layer components` in `ui/src/components.css`. List what exists today: ```bash grep -o '\.ss-[a-z0-9-]*' ui/src/components.css | sort -u ``` State and variant are short modifier classes on the same element: `.on` (selected or checked), `.sel` (selected row or tile), `.ok` `.warn` `.bad` `.inf` (tone), `.sm` `.lg` (size). | Area | Classes | |------|---------| | Page | `.ss-wrap` (1080px column, 28px
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (1)
.devcontainer/bin/dev-servers
Gates applied: no_behavioural_pass.
0d9340b2ca90full audit observations/trust-audit/skill/runkids__skillshare-ui-website-style.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 0d9340b2ca90 | SAFE | B | 89 | first audit |
Questions
What does the Skillshare Ui Website Style skill do?
📚 Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
Is Skillshare Ui Website Style safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Skillshare Ui Website Style access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (0d9340b2ca90), read on 2026-10-08. The repository is watched, and a new audit runs when it changes — this is the first audit.