ferrox-frontend-design
Use when building or restyling any frontend or UI surface - web pages, components, dashboards, landing pages, HTML mockups, or visual companion screens.
Skill by FerroxLabs
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ferroxlabs-ferrox-frontend-design
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, frontend, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Node.js package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/ferrox-frontend-design
What's inside
- Skill name
ferrox-frontend-design- Description
- Use when building or restyling any frontend or UI surface - web pages, components, dashboards, landing pages, HTML mockups, or visual companion screens. Covers aesthetic direction, typography, layout, copy, the anti-template discipline, the design knowledge base, and the DESIGN.md contract.
- License
- MIT
- Instructions
- 99 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (24)
- SKILL.md
- PROVENANCE.md · data/
- brand-atlas.json · data/
- charts.csv · data/
- google-fonts.csv · data/
- palettes.csv · data/
- patterns.csv · data/
- reasoning.csv · data/
- styles.csv · data/
- typography.csv · data/
- ux-guidelines.csv · data/
- search.js · scripts/
- bento-grid.md · templates/design/
- brutalist-luxe.md · templates/design/
- cinematic-dark.md · templates/design/
- data-dense-dashboard.md · templates/design/
- editorial-warm.md · templates/design/
- glassmorphic.md · templates/design/
- magazine-editorial.md · templates/design/
- maximalist-vibrant.md · templates/design/
- neo-swiss-tech.md · templates/design/
- swiss-minimal.md · templates/design/
- terminal-native.md · templates/design/
- warm-organic.md · templates/design/
SKILL.md (first lines)
> Doctrine is original Ferrox Factory writing (MIT). The knowledge base (`data/`, `templates/design/`, `scripts/search.js`) is ported from ijfw-design: Sean Donahoe's own IP, internal port, ijfw repo untouched.
# Frontend Design
## Overview
Act like a studio that was hired specifically because the client fired someone for shipping a template. Every visual decision (palette, faces, layout, copy) must be an argument for this product, defensible in a sentence that names the subject. If a choice would survive being pasted into an unrelated project, it is not a choice yet.
**Core principle:** distinctiveness comes from the subject, not from decorating harder.
## Architecture: contract vs knowledge
- **DESIGN.md is the per-project CONTRACT (state).** It lives at the project root and records what THIS project locked: palette, type scale, spacing, components, voice, never-do list.
- **This skill plus its data is the KNOWLEDGE (global).** Palettes, patterns, typography pairings, UX rules, direction templates, and a brand atlas that apply to any project.
- **The flow:** `/ferrox-design-init` consults the knowledge, crystallizes decisions into DESIGN.md, and DESIGN.md then binds all subsequent UI work. Knowledge advises; the contract rules.
## The contract comes first
```bash runnable
if [ -f DESIGN.md ]; then
echo "DESIGN.md found: binding for this session"
else
echo "no DESIGN.md: offer /ferrox:design-init before substantial UI work"
fi
```
- **`DESIGN.md` exists:** it is binding. Read it before writing any interface code. Its tokens and never-do list override your instincts, this skill's defaults, and every knowledge-base suggestion. If the contract blocks something you believe is right, propose an edit to the contract; do not quietly ship around it.
- **No `DESIGN.md`:** propose creating one with `/ferrox-design-init` (interview mode for greenfield, `--from-existing` when UI code already votes). For a quick throwaway mockup you may proceed, but say so and treat its decisions as candidates for the future contract, not precedent.
## The knowledge base (progressive disclosure)
Do not load the data files wholesale. Keep this doctrine in context and pull knowledge on demand, running from this skill's directory:
```bash
node scripts/search.js "fintech dashboard dense data" --design-system -p "ProjectName"
node scripts/search.js "warm editorial" --domain palettes -n 5
node scripts/search.js "display serif" --domain typography -n 5
node scripts/search.js "form validation" --domain ux -n 5
```
- `--design-system` returns 1 full recommendation: pattern, style, palette, typography, UX rules, charts, anti-patterns (add `--explain` for the reasoning trace).
- `--domain <styles|palettes|typography|ux|charts|patterns>` returns targeted rows from `data/`.
- Brand-reference requests ("like Vercel", "like Muji"): read `data/brand-atlas.json`, match the project's domain, and compose from that brand's aesthetic, palette hint, and type hint.
- Direction templates: `templates/design/` holds 12 complete directions (swiss-minimal, editorial-warm, terminal-native, cinematic-dark, glassmorphic, brutalist-luxe, maximalist-vibrant, neo-swiss-tech, data-dense-dashboard, warm-organic, bento-grid, magazine-editorial). When a direction is chosen, load exactly 1 matching template file and use its tokens as the starting system; never load several to browse in context.
Precedence when values conflict: DESIGN.md tokens first, then the chosen template or brand direction, then search results, then your own heuristics.
## Ground every design in the subject's own world
Pin down the subject before touching CSS: what the product is, who uses it, and the single job of this screen. The subject's materials, instruments, and vocabulary are the richest source of specific choices. A tide planner earns a nautical chart's linework; a foundry tool earns iron and heat. If the brief is vague, choose a concrete subject, state it, and design for it. Build with real content from that world, not lorem ipsum.
## The hero is a thesis
The opening of a page is an argument about what matters, in whatever form proves it: a headline, a live demo, a real artifact, 1 interactive moment. The reflexive big-number-plus-small-label hero with a gradient accent is the template answer; reach for it only when a metric genuinely is the story. Open with the most characteristic object in the subject's world.
## Typography carries personality
- Pair a characterful display face with a complementary body face; add a utility or mono face only when data earns it (consult `data/typography.csv` and `data/google-fonts.csv` for vetted pairings).
- Set a numeric scale (pick a ratio, list the sizes) and stick to it. Off-scale sizes are drift.
- Choose weights, widths, and letterspacing on purpose. A memorable type treatment can be the identity of the whole design.
## Structure is information
Numbering, eyebrows, dividers, and labels must encode something true. Number steps only when order matters to the reader. Decorative 01 / 02 / 03 markers on unordered content tell the reader a lie about sequence, and they read as template filler.
## The anti-template list
Generated UI collapses into a small set of looks. Name them so you can refuse them:
1. Warm cream background, high-contrast serif display, terracotta accent.
2. Near-black page with 1 lone acid-green or neon accent.
3. Purple-to-blue gradient hero with glassy cards.
4. Everything centered: centered nav, centered hero, centered card stacks, centered footer.
5. Decorative numbering and hairline dividers that encode no real structure.
Any of these can be legitimate when the brief explicitly asks for it; the brief always wins. What is never legitimate is arriving at 1 of them by default, independent of subject. If your draft matches an entry, that section is not designed yet: revise it and say what changed.
## Take exactly 1 justified aesthetic risk
Every design gets 1 bold move: an unusual face, a confrontational layout, an expressive motion moment, a signature element. Write the justification in subject terms before building it, then keep everything around it quiet so the risk reads as intent. Zero risks produces wallpaper; 3 risks produce a costume.
## Match complexity to the vision
Maximalist directions demand elaborate, controlled execution; minimal directions demand precision in spacing, type, and detail. Elegance is executing the chosen vision at its required fidelity, not adding or removing ornament to hedge.
## Copy is design material
Name things by what users recognize and control, never by internal machinery: people manage alerts, not notification pipelines. Buttons state their outcome ("Save route", not "Submit") and keep that name through the flow. Errors say what happened and what to do next. Empty states point at the first action. Sentence case, active voice, no filler, register tuned to the audience defined in `DESIGN.md`.
## Process
1. **Brainstorm direction.** State the subject, audience, and the screen's single job. Check `DESIGN.md`; if absent, propose `/ferrox-design-init`.
2. **Explore 2-3 directions.** Genuinely different ones, seeded from a `--design-system` query or the template catalog, each summarized in a sentence. Recommend 1 and say why, before listing the others.
3. **Plan the tokens.** Load exactly 1 chosen direction template (or the DESIGN.md tokens verbatim) and lock a compact system: 4-6 named palette values, faces and numeric type scale, spacing unit and steps, layout concept, and the 1 signature risk.
4. **Build.** Derive every color, size, and face from the token plan. No improvised values mid-build; a needed value that is missing goes into the plan first.
5. **Critique.** Review the result against `DESIGN.md` (or the token plan) and the anti-template list, section by section. Screenshot it if the environment allows; judge the render. Verify the floor: responsive to mobile, visible keyboard focus, 4.5:1 body contrast, reduced motion respected.
6. **Refine.** Fix what the critique caught, then remove 1 decoration that survives without a justification. Repeat the critique once after meaningful changes.From FerroxLabs/ferrox-factory, MIT.
More from FerroxLabs/ferrox-factory
- 0.593score
ferrox-debug
FerroxLabs
Something is broken, failing, crashing or behaving wrong.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-eval-review
FerroxLabs
An AI feature was built and you want its evaluation coverage audited, with a fix plan
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-add-tests
FerroxLabs
Something was built and you want tests covering what it promised to do
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-audit-fix
FerroxLabs
You want issues found, classified, fixed, tested and committed without steering each one
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-design-init
FerroxLabs
You want a durable design contract before any UI is built.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-autonomous
FerroxLabs
Build every remaining step by itself, discuss then plan then execute, pausing on decisions
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-brainstorm
FerroxLabs
You have an idea or a blank page and want to think it through.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-capture
FerroxLabs
An idea, note or todo you do not want to lose right now.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-code-review
FerroxLabs
You want the code checked for bugs, security issues and quality before it goes anywhere
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-complete-milestone
FerroxLabs
A milestone is finished and you want it archived and the next version prepared
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-config
FerroxLabs
You want to change how Ferrox behaves.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-fast
FerroxLabs
A trivial change you could describe in one line.
SkillBFreshness: B★ 23Claude Code +9
Signals
- Stars
- 23
- Forks
- 8
- Open issues
- 0
- Last commit (this folder)
- Jul 22, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/FerroxLabs/ferrox-factory
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from FerroxLabs
- 0.593score
ferrox-add-tests
FerroxLabs
Something was built and you want tests covering what it promised to do
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-audit-fix
FerroxLabs
You want issues found, classified, fixed, tested and committed without steering each one
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-autonomous
FerroxLabs
Build every remaining step by itself, discuss then plan then execute, pausing on decisions
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-brainstorm
FerroxLabs
You have an idea or a blank page and want to think it through.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-capture
FerroxLabs
An idea, note or todo you do not want to lose right now.
SkillBFreshness: B★ 23Claude Code +9 - 0.593score
ferrox-code-review
FerroxLabs
You want the code checked for bugs, security issues and quality before it goes anywhere
SkillBFreshness: B★ 23Claude Code +9
Cite this page
ferrox-frontend-design skill. Agent Mart. https://agentmart.dev/skills/ferroxlabs-ferrox-frontend-design (last updated 2026-10-24)