Frontend development guidelines for the Phoenix AI observability platform. Use when writing, reviewing, or modifying React components, TypeScript code, styles, or UI features in the app/ directory. Triggers on any frontend task — new components, UI changes, styling, accessibility fixes, form handling, or component refactoring. Also use when the user asks about frontend conventions or component patterns for this project. For design system rules (error display, layout, dialogs, tokens), use the phoenix-design skill.
69
86%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Composable rules for building UI in the Phoenix app. Before starting work, explore app/src/components/ and app/package.json to understand existing patterns, packages, and conventions — then follow these rules.
Read the relevant file(s) based on the task:
| Rule file | When to read |
|---|---|
rules/components.md | Creating, composing, or refactoring components |
rules/relay.md | Using Relay |
rules/accessibility.md | Any interactive element, form, overlay, or semantic markup |
rules/test-ids.md | Adding or changing data-testid attributes for E2E tests |
rules/resize-svg-logo-assets.md | Adding or updating provider/integration logo icons |
After visual changes, use agent-browser to verify the UI looks correct. When modifying a shared component, check its usages across the app.
When adding, removing, renaming, or materially changing what a page contains, update the route's handle.agentRoute metadata in app/src/Routes.tsx if an assistant agent should be able to link users to that destination. Keep metadata small and search-oriented:
label: human page name.description: concise page purpose based on what the page now contains, including user phrases PXI might hear when looking for that page.If a content change makes an existing route easier or harder to find by natural language, adjust description in the same change.
Significant view state must be recreatable from the URL. If a user can select a tab, sub-view, or detail state that should survive reloads, sharing, or adjacent-record pagination, encode it in route params or search params and preserve the relevant URL state during navigation.
2cce4ee
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.