{"adoption": {"forks": 364, "observed_at": "2026-08-28T04:09:22.966347+00:00", "stars": 5607}, "canonical_url": "https://ross.abutalabs.com/products/interface-design", "card": {"archived": false, "artifact_type": "plugin", "description": "Design engineering for Claude Code. Craft, memory, and enforcement for consistent UI.", "domain": ["web-development", "frontend", "web-design", "developer-tools"], "enriched": true, "function": ["ui-components", "developer-tools", "plugin-system", "state-management"], "health_score": 92, "homepage": "https://interface-design.dev", "language": "Shell", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["Dammyjay93/interface-design"], "name": "Dammyjay93/interface-design", "platform": ["cli", "cross-platform"], "pushed_at": "2026-06-20T11:32:45+00:00", "repo": "Dammyjay93/interface-design", "stars": 5607, "tags": ["claude-code", "design-system", "agent-skill", "ui-consistency", "design-memory", "shell", "ai-agents"], "topics": [], "urls": [], "use_cases": ["keep UI design decisions consistent across Claude Code sessions", "stop button heights and spacing values from drifting between conversations", "maintain a spacing grid and color palette for agent-built interfaces", "apply a consistent depth strategy (borders vs shadows) across components", "build polished admin dashboards and developer tools with a coding agent", "save and reuse component patterns like exact button and card measurements"], "what_it_is": "A Claude Code plugin/skill that gives coding agents persistent memory of UI design decisions, saving choices like spacing grids, colors, and depth strategy to a system.md file and reloading them across sessions. It enforces craft principles so interfaces like dashboards, admin panels, and tools stay visually consistent.", "when_to_avoid": ["you are building marketing sites rather than application interfaces", "you do not use an AI coding agent for UI work", "you need a full design system toolchain or component library rather than an agent skill"], "when_to_choose": ["you build app UIs (dashboards, tools, admin panels) with Claude Code or similar agents", "design decisions drift between sessions and you want persistent design memory", "you want systematic consistency enforced before each component is written"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/interface-design", "repo": "Dammyjay93/interface-design", "role": "main", "score": 74}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:22.966347+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:55:26.249712+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "19a9cf56fde8917ca85643e17d545c56e31310bc45b81beb7f3fafc6e5454f4c", "fetched_at": "2026-08-28T04:09:22.966347+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Dammyjay93/interface-design"}, {"content_hash": "8032e4597b52bd0d081a9cb0b08809704d3fe656f18f34edb3eabc01cb1727b6", "fetched_at": "2026-08-29T08:50:10.637074+00:00", "kind": "homepage", "missing": false, "url": "https://interface-design.dev"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 88, "longevity": 17, "rhythm": 88}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 241, "days_push": 74, "days_rel": 82, "gap_med": 19, "n_releases_24m": 4}, "score": 74, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}