Spartan/ng Developer Guidelines
SkillWeb & browsingGenerates Spartan/ng UI code and guidance for Angular projects using @spartan-ng/helm (styled components copied into the repo) and @spartan-ng/brain (headless primitives). Covers installation, Tailwind v4 theming, component usage across all categories (forms, overlays, layout, display, data), Brain primitives, ReactiveForms / Signal Forms integration, and accessibility. Use when the user mentions Spartan, spartan-ng, @spartan-ng, hlm-* or brn-* components, OR when the Angular project's package.json contains @spartan-ng/* dependencies. Pairs with angular-developer for Angular fundamentals.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Spartan/ng Developer Guidelines skill
What this skill tells your AI
The instructions your AI receives, as published by mofirojean/angular-ui-skills in skills/spartan-ng-developer/SKILL.md and read by ahel’s review.
Pairs with
angular-developer- that skill provides Angular fundamentals (signals, DI, routing, forms, SSR, accessibility). This skill focuses on Spartan/ng specifics. Install both for the best experience.
Compatibility
- Tracks:
@spartan-ng/brainv1.3.1 (released 2026-08-04). Spartan reached 1.0 stable in June 2026; the 1.x line adds components fast while keeping the API surface versioned and re-validated each bump. - 1.1 → 1.3 highlights: 1.1 added the month-year picker and full date-input support to Calendar / Date Picker, host-style overrides for
brn-radio/brn-checkbox/brn-switch, a CLI scaffold-integrity healthcheck, and strict-CSP inline-style fixes. 1.2 added new message, bubble, attachment, and marker components plus Signal-Forms compatibility for Date Picker and Input OTP. 1.3 / 1.3.1 brought a11y fixes for autocomplete / combobox / command and adefaultOpenoption on Sidebar. No breaking API changes across the 1.x line. - Angular: v21 or v22.
@spartan-ng/brain@1.3.1peers@angular/* >=21.0.0 <23.0.0, so both Angular 21 and 22 are officially supported. Standalone components, control flow (@if/@for), and signal APIs (input()/output()) are assumed; it will not generateNgModule-based or decorator-based code. - Tailwind: v4 required. Spartan 1.x peers
tailwindcss >=4.0.0, v3 is no longer supported. It also pulls inluxon >=3.0.0(date primitives),clsx >=2.0.0, andtw-animate-css >=1.0.0as peers, ensure those are installed. See setup.md. - Not supported: old alphas (
v0.0.1-alpha.*) with pre-1.0 API drift, Angular v20 or below, Tailwind v3, projects using@spartan-ng/ui-*packages (deprecated, replaced by@spartan-ng/helm).
If the project's installed version differs significantly from the tracked one, warn the user before generating code, the API surface may have shifted.
-
Always check the project's Spartan/ng version before providing guidance. Spartan is now 1.0 stable but still evolves,
package.jsonis the source of truth. -
Detect the project layout up front:
- If
nx.jsonexists → Nx workspace. Usenpx nx g @spartan-ng/cli:ui <name>commands. - Otherwise → Angular CLI. Use
ng g @spartan-ng/cli:ui <name>commands.
The destination path for generated Helm source is configured in
components.json(componentsPath) - don't hard-code path assumptions. Find the actual location intsconfig.jsonpathsafterinit. See setup.md. - If
-
Confirm the project is on Tailwind v4 (
tailwindcssdependency inpackage.json). Spartan 1.x requires Tailwind v4 (peer>=4.0.0); v3 is no longer supported. Also ensure theluxon,clsx, andtw-animate-csspeers are present. See setup.md. -
After generating code that uses Spartan components, run
ng buildto verify there are no compilation errors. If components render unstyled, the issue is almost always Tailwind config - see the troubleshooting section in setup.md.
Spartan architecture: Helm vs Brain (critical)
Spartan ships two packages with a unique relationship:
-
@spartan-ng/helm- Styled components that live in the user's project, not innode_modules. The CLI (ng g @spartan-ng/cli:ui button) copies the component source into the path configured bycomponents.json(componentsPath). The@spartan-ng/helm/<name>import is a tsconfig path alias to the generated source. To customize a Helm component, edit the file in the user's repo. Do not look for it innode_modules. -
@spartan-ng/brain- Headless, accessible primitives installed normally from npm. Helm components compose Brain primitives via Angular'shostDirectives.
Default to Helm. Reach for Brain only when: (1) Helm doesn't expose the primitive you need, (2) you're building a reusable composition that wraps multiple Helm components, or (3) you need to control accessibility attributes Helm hides.
Installation and theming
- Setup: Install the CLI, add Spartan, configure Tailwind v4 (required, plus the
luxon/clsx/tw-animate-csspeers), CLI vs Nx detection. Read setup.md - Theming: CSS variables, dark mode, custom themes. Read theming.md
Components
Spartan/ng provides 56 stable Helm components, grouped here by category. The shared conventions file applies to all of them; the category files cover specific component APIs and gotchas.
- Helm conventions: The
hlm*directive pattern, signal inputs, composition viahostDirectives, thecn()helper, theHlmXImportsbarrel pattern, common pitfalls. Read helm-conventions.md - Form controls: Autocomplete, Button, Button Group, Checkbox, Combobox, Date Picker, Field, Input, Input Group, Input OTP, Label, Native Select, Radio Group, Select, Slider, Switch, Textarea, Toggle, Toggle Group. Read form-controls.md
- Overlays: Alert Dialog, Command, Context Menu, Dialog, Dropdown Menu, Hover Card, Menubar, Navigation Menu, Popover, Sheet, Sonner (Toast), Tooltip. Read overlays.md
- Layout: Accordion, Aspect Ratio, Card, Collapsible, Resizable, Scroll Area, Separator, Sidebar, Tabs. Read layout.md
- Display: Alert, Avatar, Badge, Empty, Icon, Item, Kbd, Progress, Skeleton, Spinner. Read display.md
- Data display: Breadcrumb, Calendar, Carousel, Data Table, Pagination, Table. Read data-display.md
Recipes
Cookbook patterns that compound multiple Helm components into a purpose-built surface. None of these are shipped Helm components, the recipe is the contribution. Start with the diff viewer (syntax highlighting, per-line gutter, file tree, inline line comments) if you're building a code-review tool. Read recipes.md
Brain primitives
- Brain: Headless primitives, when to drop down from Helm, building custom compositions. Read brain.md
Forms integration
- Forms: Wiring Helm form components to ReactiveForms or Signal Forms,
ControlValueAccessorpatterns, validation display. Read forms.md
Accessibility
- Accessibility: A11y conventions Helm and Brain provide for free, ARIA patterns to know, and gotchas. Read accessibility.md
Signals
- GitHub stars
- 29
- Forks
- 2
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
spartan-ng-developer- Source
- github.com/mofirojean/angular-ui-skills