design-system
Skill1.7k starsChanged 12 days agoMITView on GitHub
Accent color and design system for a macOS app, from the app's accent and the accent picker in Settings to Swift tokens in code plus a design/DESIGN-SYSTEM.md that says which token to use when. Use when the user wants a brand or accent color, wants people to pick a color, when an app has more than a few screens, when screens drift apart or animations feel inconsistent, or when the user asks for themes, a style guide, or design tokens.
192 other projects use a version of this, 2 of them edited.
Adopted by
Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data
Most recently taken up by
- Rojios/everything-claude-codetheir own version, first seen Nov 8, 2026
- caidanw/skillstheir own version, first seen Nov 8, 2026
- Adelie-Squad/solosquadtheir own version, first seen Nov 8, 2026
- darkweb19/skillstheir own version, first seen Nov 8, 2026
- dmoreq/agent-grimoiretheir own version, first seen Nov 8, 2026
- ahmadvahidi/skill-atlastheir own version, first seen Nov 8, 2026
Who's talking about daveebbelaar/bama
- Dave Ebbelaar“This Free Repo Lets Claude Code Build Any Mac App”YouTube · Oct 26, 2026 · 121k views
- tamhn“Claude Giờ Làm Được MỌI Ứng Dụng Mac (Skill Miễn Phí)”YouTube · Oct 29, 2026 · 8.1k views
- Claudical“App Store 대신 말로 만드는 Mac 앱 | Claude Code 플러그인 BAMA”YouTube · Nov 3, 2026 · 1.9k views
- Daksh“BAMA AI Agent builds native Mac apps from screenshots #shorts”YouTube · Oct 28, 2026 · 742 views
- Tech by Thilak“Claude can now clone Mac apps (BAMA, free and open source)”YouTube · Nov 2, 2026 · 310 views
The biggest 5 of 42 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 42
Talked about on GitHub, YouTube and the web (42 times).
On GitHub · 20
- Nov 5, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-11-01 → 1.1.1 — sudosubin/agents.nix0 reactions
- Nov 5, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-11-01 → 1.1.1 — sudosubin/agents.nix0 reactions
- Nov 1, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-29 → 0-unstable-2026-11-01 — sudosubin/agents.nix0 reactions
- Nov 1, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-10-29 → 0-unstable-2026-11-01 — sudosubin/agents.nix0 reactions
- Nov 1, 2026[GitHub Radar] 2026-11-01: 3 repo đáng xem — mrxcode-debug/pdt-github-hot-radar0 reactions
15 more on GitHub
- Oct 30, 2026H: Mac app (SwiftUI shell around the Rust binary), replaces the AppleScript droplet — fastermadman/PDFable0 reactions · 1 comment
- Oct 29, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-10-27 → 0-unstable-2026-10-29 — sudosubin/agents.nix0 reactions
- Oct 29, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-27 → 0-unstable-2026-10-29 — sudosubin/agents.nix0 reactions
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/layout-grid - layout-grid — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/design-system - design-system — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/design-kit - design-kit — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026agent-skills.github.daveebbelaar.bama: init at 0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/design/design-from-app - design-from-app — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/design/app-icon - app-icon — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/swift-swiftui - swift-swiftui — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-26 → 0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/performance - performance — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/os-integrations - os-integrations — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/improve-architecture - improve-architecture — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026claude-code-plugins.github.daveebbelaar.bama: init at 0-unstable-2026-10-26 — sudosubin/agents.nix0 reactions
On YouTube · 13
- Oct 26, 2026This Free Repo Lets Claude Code Build Any Mac App — Dave Ebbelaar121k views · 118 comments
- Oct 29, 2026Claude Giờ Làm Được MỌI Ứng Dụng Mac (Skill Miễn Phí) — tamhn8.1k views · 5 comments
- Nov 3, 2026App Store 대신 말로 만드는 Mac 앱 | Claude Code 플러그인 BAMA — Claudical1.9k views · 1 comment
- Oct 28, 2026BAMA AI Agent builds native Mac apps from screenshots #shorts — Daksh742 views
- Nov 2, 2026Claude can now clone Mac apps (BAMA, free and open source) — Tech by Thilak310 views
8 more on YouTube
- Oct 29, 2026Claude Code Mac App: One Sentence In, a Working App Out (Free BAMA Repo) — Simply AI217 views
- Oct 29, 2026Clone any native Mac app using AI agents 🚀 — LookOnThisGit117 views · 1 comment
- Nov 1, 2026AI Se Apni Mac App? 🖥️ — Suresh52 views
- Nov 2, 2026See an app you like? Claude Code rebuilds it as a Mac app (BAMA) — RocketLauncher Code40 views
- Oct 27, 2026Your AI can now build real Mac apps #shorts — No Short Answers36 views · 1 comment
- Oct 27, 2026BAMA: Agent Skills That Build Native Mac Apps #Shorts — Brix AI30 views
- Oct 29, 2026BAMA + 2 more repos · hotin.ai daily Oct 29, 2026 #Shorts — HotInAI27 views
- Nov 4, 2026bama: Rebuild any Mac app instantly — Dail Finds Dev | Repos, Tools, Sites2 views
On the web · 9
- Oct 30, 2026Build your own Mac app with Claude Code | aruntastic — aruntastic.com
- Oct 26, 2026This Free Repo Lets Claude Code Build Any Mac App · CHOOSETO.AI — chooseto.ai
- Oct 24, 2026daveebbelaar/bama - The Skill Leaderboard — skillleaderboard.com
- Feb 15, 2026Product TEA Test: GAMMA - by TEA (The Era Arc) and Sam Li — tea2025.substack.com
- Dec 28, 2025My Experience Using the BMAD Framework on a Personal Project (Patience Required) — dev.to
4 more on the web
- Dec 6, 2025Finding My Brain Again in the Middle of the AI Fire hose | by Shay Dratler — dratler-shay.medium.com
- Sep 14, 2025#6 - ChatGPT Agent, Youware, Gamma - by Brandon — behindonai.substack.com
- Jul 16, 2025My 15 favorite apps I use daily. We spend hours each day on our phones… | by Bex Jeanson — userbexperiencedesign.medium.com
- Aug 11, 2023Last Day with @daveebbelaar here at Termene.ro in Nuba, Mamaia. I got some great insight on how to code an AI Agent that can take notes for your meetings and organise them … | David Podut — linkedin.com
Used with
Projects with it also use setup-engine, team-level and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
CoralGameSkillsetup-engine
Configure the project's game engine and version. Pins the engine in CLAUDE.md, detects knowledge gaps, and populates engine reference docs via WebSearch when the version is beyond the LLM's training data.
Also in 13 projects that use this
CoralGameSkillteam-level
Orchestrate level design team: level-designer + narrative-director + world-builder + art-director + systems-designer + qa-tester for complete area/level creation.
Also in 12 projects that use this
lilangMaxSkillcreate-stories
Break a single epic into implementable story files. Reads the epic, its GDD, governing ADRs, and control manifest. Each story embeds its GDD requirement TR-ID, ADR guidance, acceptance criteria, story type, and test evidence path. Run after /create-epics for each epic.
Also in 11 projects that use this
lilangMaxSkillstory-done
End-of-story completion review. Reads the story file, verifies each acceptance criterion against the implementation, checks for GDD/ADR deviations, prompts code review, updates story status to Complete, and surfaces the next ready story from the sprint.
Also in 11 projects that use this
- +2 more from CoralGame
- +6 more from lilangMax
Other versions192 projects use a version of this.
Word for word · 0
None found.
Edited · 2
- daveebbelaar/bawa★ 1741% same
- Stijnus/dsh-rev-eng★ 199% same
Wrote their own version · 190
- nextlevelbuilder/ui-ux-pro-max-skill★ 147ksame name
- getsentry/sentry★ 46ksame name
- anthropics/knowledge-work-plugins★ 35ksame name
- Donchitos/Claude-Code-Game-Studios★ 27ksame name
- ethereum/ethereum-org-website★ 6ksame name
- langwatch/langwatch★ 5ksame name
- joye61/pic-smaller★ 2.9ksame name
- reatom/reatom★ 1.4ksame name
- microsoft/power-platform-skills★ 1.1ksame name
- code-dot-org/code-dot-org★ 902same name
180 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository22 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .claude/CLAUDE.mdCLAUDE.md
- agent-cliSkill
- improve-architectureSkill
- os-integrationsSkill
- performanceSkill
- swift-swiftuiSkill
- app-iconSkill
- design-from-appSkill
- design-kitSkill
- layout-gridSkill
- mac-designSkill
- ux-designSkill
- cloneSkill
- researchSkill
- user-storiesSkill
- build-and-verifySkill
- improve-loopSkill
- test-mac-appSkill
- app-briefSkill
- bamaSkill
- new-mac-appSkill
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 4 are distinctive, and 8 are very specific to this project.
0
Common
Most of the 175 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 13
Start from mac-design. Tokens cover only what the system does not: the accent, custom surfaces, radii, motion, overlays, and custom …
- Very specific: line 34
Read ## Look in docs/BRIEF.md.
- Distinctive: line 46
Use brand color sparingly: the app icon, an empty state, one hero element in the content.
- Very specific: line 53
Check: ThemeStore.defaultID is "system", and the snapshots show the accent on buttons, toggles, and selection in light and dark mode.
- Very specific: line 91
Never hard-code a hex accent.
- Very specific: line 92
Every custom color has four values: light, dark, and a stronger one of each for Increase Contrast …
- Very specific: line 95
Never redefine or copy a semantic color (.separator as text, a label color as a fill).
- Very specific: line 107
Every animation goes through Motion, so a per-feature "Full, Fast, Off" setting and Reduce Motion apply everywhere.
- Distinctive: line 109
Search results and switchers do not animate.
- Distinctive: line 113
Never animate a view's first layout.
- Distinctive: line 115
Leave room around glass for its shadow (about 3 times the shadow radius).
- Very specific: line 126
Add one line to the app's CLAUDE.md (create the file if it is missing): "Design rules: design/DESIGN-SYSTEM.md.
“Common” is measured: kept by at least 6 in 10 of the 175 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Design system
A design system is a short list of tokens in code and one page that says which token to use when. Every screen uses tokens, never raw values. Then a change in one place changes the whole app, and an agent can review a screen against one page.
Start from mac-design. Tokens cover only what the system does not:
the accent, custom surfaces, radii, motion, overlays, and custom controls.
The app keeps Apple's look. Only the accent color changes. For parts of
your own (a custom sidebar, buttons, icons), call the Skill tool with
design-kit. To copy the look of an app the user names, call it with
design-from-app.
The template already has the base in Sources/<App>/UI/:
Theme.swift: the accent colors (Theme.all), the saved choice (ThemeStore), the tokensPalette.accent,Palette.accentText,Palette.onAccent, and.themed(), which tints every scene.AppearanceSettings.swift: Settings > Appearance, where people pick the accent. Light and dark mode follow the Mac. Apple advises against an app-specific mode setting; add a System/Light/Dark picker only when the owner asks for one, with System as the default. [HIG Dark Mode]Grid.swift: spacing (see thelayout-gridskill).
1. Pick the accent
Read ## Look in docs/BRIEF.md. With no color named, keep system: it
follows the accent color the person set for their Mac.
For a brand color, set ThemeStore.brand to a Theme with three shades:
light (accent text in dark mode), base (fills and tint), and deep
(accent text in light mode). Set darkText: true when white text on
base is hard to read (yellow, mint, cyan). Keep
ThemeStore.defaultID = "system". The brand then shows only while the
Mac's accent is Multicolor, as in Apple's apps. Any other accent the person
chose for their Mac wins, and so do sidebar icons, which people expect in
their own accent. [HIG Color, Sidebars]
Use brand color sparingly: the app icon, an empty state, one hero element in the content. Keep it off most controls. [HIG Branding]
To compare colors, take snapshots with APP_ACCENT=<id> for two or three
of them and show the user the PNGs. Keep the picker in Settings, so people
can still choose their own color.
Check: ThemeStore.defaultID is "system", and the snapshots show the
accent on buttons, toggles, and selection in light and dark mode.
2. Collect
New app with no views yet? Skip this step: write the token files with the defaults below before the first view.
Existing app: read every view. List each raw value you find: hex colors, opacities, corner radii, paddings, frame widths, animation durations and curves, custom button styles. Group them. Most apps have 3 to 5 of each where 1 or 2 are meant.
3. Write the tokens
Accent values live in Theme.swift. The rest get one file per group in
Sources/<App>/UI/. Add each token when the app first needs it:
| File | Holds |
Theme.swift | the accents, ThemeStore, .themed(), and Palette: accent, onAccent (text and symbols on accent fills), accentText (accent-colored text: deep shade in light mode, light shade in dark mode) |
Grid.swift | the spacing scale (Space) and the layout probes |
Surfaces.swift | surface, surfaceHover, hairline, one warning color |
Radius.swift | xs 6 chips and key caps, sm 8 controls, row 10 row hover fills, md 12 cards, lg 18 widgets, xl 26 floating glass |
Layout.swift | contentWidth, fixed column and sheet widths |
Motion.swift | hover, quick (presses, small flips), ui, select (selection moving through a live list), appear, dismiss, glide, numberRoll, listChange, loops (pulse) that stop under Reduce Motion |
Components.swift | more control styles: HoverButtonStyle, .hoverFill, toggles, chips |
Overlay.swift | one panel builder, one entrance, one exit |
Surfaces adapt to light and dark. Views read the accent through .tint or
Palette, so a new choice in Settings redraws the whole app.
4. Write design/DESIGN-SYSTEM.md
One section per file above. Each section says which token to use when, and the rules that go with it. Keep it under 100 lines. Rules that transfer to most apps:
- Never hard-code a hex accent. Use
.tintorPalette.accent. - Every custom color has four values: light, dark, and a stronger one of
each for Increase Contrast (
Color(light:dark:highContrastLight:highContrastDark:)inTheme.swift). [HIG Color] - Never redefine or copy a semantic color (
.separatoras text, a label color as a fill). Their values change per release. - A custom surface in its neutral state is a little translucent, so it picks up the desktop tint like system surfaces. A colored state is opaque.
- A custom font only for headings. Body and captions stay in the system font, and every custom font has a bold weight for the Bold Text setting.
- Accent-colored text uses
Palette.accentText. Text on an accent fill usesPalette.onAccent, never a fixed white. - Style controls with
ButtonStyleandToggleStyle. Never rebuild a control from shapes: it loses the keyboard, focus, and VoiceOver. - Inner corners are concentric: inner radius = outer radius - inset.
- Every animation goes through
Motion, so a per-feature "Full, Fast, Off" setting and Reduce Motion apply everywhere. - Search results and switchers do not animate. Speed wins.
- Hover never moves a selection. Only a click or a key does.
- Units ("KB/s", "%") never animate. Only the number does
(
.contentTransition(.numericText())). - Never animate a view's first layout. Overlays wait one frame, then animate opacity, scale, and a few points of travel.
- Leave room around glass for its shadow (about 3 times the shadow radius).
- One primary button per page or card.
5. Migrate
Replace raw values screen by screen, one commit per screen. After each,
build and snapshot (build-and-verify skill). The screen looks the same or
better, never worse.
6. Point agents at it
Add one line to the app's CLAUDE.md (create the file if it is missing):
"Design rules: design/DESIGN-SYSTEM.md. Use its tokens; never raw colors,
radii, or durations."
Done when this finds no hits outside the token files:
grep -rnE 'cornerRadius: [0-9]{1,2}\b|duration: [0-9]|\.spring\(response|\.snappy\b|\.easeInOut|\.easeOut\(|Color\(hex:|Color\(red:' Sources/ \
| grep -v 'Path(roundedRect'(hex strings in data and comments are fine), and DESIGN-SYSTEM.md has a section for every token file.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

