/frontend-designGuidance for distinctive, intentional visual design when building new UI or reshaping an existing one.
One skill or template in a catalogue grid, with its command, description, category and install state, and a checkbox to pick several.
Live in all three themes. Everything here is interactive.
/frontend-designGuidance for distinctive, intentional visual design when building new UI or reshaping an existing one.
/code-reviewReviews the current diff for correctness bugs, then for simpler and faster ways to write the same thing.
/accessibility-review-and-reportAudits a page against WCAG 2.2 AA: contrast, keyboard paths, names and roles, target sizes and reflow, then writes a short report with fixes ranked by impact on the people who rely on them every day.
/frontend-designGuidance for distinctive, intentional visual design when building new UI or reshaping an existing one.
/code-reviewReviews the current diff for correctness bugs, then for simpler and faster ways to write the same thing.
/accessibility-review-and-reportAudits a page against WCAG 2.2 AA: contrast, keyboard paths, names and roles, target sizes and reflow, then writes a short report with fixes ranked by impact on the people who rely on them every day.
/frontend-designGuidance for distinctive, intentional visual design when building new UI or reshaping an existing one.
/code-reviewReviews the current diff for correctness bugs, then for simpler and faster ways to write the same thing.
/accessibility-review-and-reportAudits a page against WCAG 2.2 AA: contrast, keyboard paths, names and roles, target sizes and reflow, then writes a short report with fixes ranked by impact on the people who rely on them every day.
import { SkillCard } from '@skribly/ui/ops'<SkillCard title={s.title} command={`/${s.name}`} description={s.description}
status={installed > 0 && <Badge tone="ok" size="sm">{t('skills.installedIn', { count: installed })}</Badge>}
badges={<Badge tone="accent" size="sm">{t(`category.${s.category}`)}</Badge>}
onOpen={() => open(s)} isSelected={picked.has(s.name)} onSelectedChange={(on) => pick(s, on)}
selectLabel={t('skills.select', { name: s.title })} />Every label is a prop, so the app passes its own words in its own language. See no built-in text.
This demo runs through axe in all three themes on every test run. See what the tests check.
These settings stay on this device and apply on every Skribly site.
Text size
Display
Reading