npx skills add ...
npx skills add equinor/fusion-skills --skill fusion-developer-app
Guides feature development in Fusion Framework React apps, including app-scoped framework research, test authoring, and test-time mocking needed to choose and verify the right integration patterns. USE FOR: building features, components, pages, hooks, services, API integrations, module configuration, and their tests. DO NOT USE FOR: issue authoring, skill authoring, CI/CD configuration, backend service changes, or general Fusion documentation unrelated to app implementation.
npx skills add equinor/fusion-skills --skill fusion-developer-app
Use this skill when developing features, components, hooks, services, or types for a Fusion Framework React application.
Typical triggers:
Implicit triggers:
src/@equinor/fusion-react-*, or styled-componentsapp.config.ts*.test.ts / *.test.tsx, vitest.config.ts, or Fusion test fixtures@equinor/fusion-framework-react-ag-charts, chart.js, react-chartjs-2Do not use this skill for:
fusion-issue-authoringfusion-skill-authoringFor Fusion Framework package ownership, hook behavior, or example discovery → use fusion-research first.
For ambiguous requests, consult assets/follow-up-questions.md before implementing.
Inspect target repo before writing code:
package.json — package manager (bun/pnpm/npm), scripts, dependencies.tsconfig.json — TypeScript settings, path aliases.src/ — directory layout, layer structure.docs/adr/ or contribute/ for project-specific code standards.biome.json, .eslintrc, prettier).app.config.ts and app.manifest.ts — endpoints, environment setup.fusion-research before writing code.Adapt to discovered conventions. references/ patterns are defaults — defer to project-specific rules when they differ.
New app from scratch → use assets/new-app-checklist.md.
src/components/ — React components (presentation layer)src/hooks/ — Custom React hooks (state and side-effect logic)src/api/ — API clients, data transforms, business logicsrc/types/ — TypeScript interfaces, type aliases, enumssrc/routes.ts — Route definitions (when using Fusion Router)src/config.ts — Fusion module configurationsrc/App.tsx — Root component, layout shellreferences/using-router.md for DSL + page patterns.Follow project code standards from Step 1. For naming, TSDoc, inline comments, type patterns, code style, error handling → defer to fusion-code-conventions.
For convention questions during implementation, invoke fusion-code-conventions directly.
Follow references/styled-components.md, references/styling-with-eds.md, references/using-fusion-react-components.md:
styled-components for custom styling (Fusion convention).Styled object pattern for co-located styled components.@equinor/eds-core-react) for standard UI.@equinor/eds-tokens) for colors, spacing, typography.styled() for customization.@equinor/fusion-react-* for domain needs not in EDS (person display/selection, side sheets, progress).style props: one-off tweaks only.agents/design.md. For component-level EDS styling, invoke agents/styling.md.Follow references/configure-services.md, references/using-react-query.md, references/configure-mocking.md:
configureHttpClient in config.ts or app.config.ts.useHttpClient(name) from @equinor/fusion-framework-react-app/http.@equinor/fusion-framework-react-app/* hooks over direct module access. Reserve framework.modules.* for non-React contexts.useQuery in thin custom hooks.Identify which module the user needs, then read only the matching reference:
| Need | Reference |
|---|---|
| HTTP clients / API integration | references/configure-services.md |
| Context module | references/using-context.md |
| Router and pages | references/using-router.md |
| AG Grid | references/using-ag-grid.md |
| AG Charts (standalone) | references/using-ag-charts.md |
| AG Grid integrated charts | references/using-ag-grid-charts.md |
| EDS + Fusion React components | references/using-fusion-react-components.md |
| People service (search, display, pick) | references/using-people-service.md |
| Settings | references/using-settings.md |
| Bookmarks | references/using-bookmarks.md |
| Analytics | references/using-analytics.md |
| Runtime config / environment | references/using-assets-and-environment.md |
| Feature flags | references/using-feature-flags.md |
| General framework modules | references/using-framework-modules.md |
| Custom module authoring | references/using-custom-modules.md |
config.ts via AppModuleInitiator callback.useAppModule, useHttpClient, useCurrentContext.app.config.ts for new API integrations.enableNavigation in config.ts when app uses routing.layout, index, route, prefix) for auto code splitting.fusion-research before choosing implementation pattern.Follow references/testing.md. Use agents/testing.md for focused test creation, maintenance, and
execution. It routes framework setup/rendering to fusion-framework-testing and module/HTTP state
to fusion-framework-mocking.
Use assets/review-checklist.md as post-generation checklist.
bun run typecheck or pnpm typecheck) — zero errors.src/ files following project layer structure.fusion-framework-testing; test-time Fusion state uses
fusion-framework-mocking where needed.Optional helpers in agents/. Use for focused review or mid-implementation guidance. Runtimes without skill-local agents apply criteria inline.
Companion skills:
fusion-research for source-backed Fusion ecosystem research when implementation is blocked by uncertainty.
fusion-framework-testing for Fusion Framework React test setup, fixtures, rendering, and troubleshooting.
fusion-framework-mocking for deterministic module state and HTTP/OpenAPI boundaries in tests.
agents/testing.md — creates, maintains, and executes app tests; routes to testing/mocking companion skills. Use for changed behavior, test files, fixtures, config, or failures.
agents/framework.md — Fusion Framework integration: modules, HTTP clients, bootstrap, runtime config, settings, bookmarks, analytics. Prefers mcp_fusion_search_framework; falls back to mcp_fusion_search_docs. Consult when wiring config.ts, app.config.ts, or framework module access.
agents/styling.md — EDS component selection, styled-components, design tokens, accessibility. Prefers mcp_fusion_search_eds. Consult when building/modifying visual components.
agents/design.md — page/view structure: Fusion Portal shell composition, layout zones, side panel usage, empty/loading state patterns. References equinor-design-system for layout ground truth. Delegates component-level checks to agents/styling.md. Consult when scaffolding new pages or layout wrappers.
agents/data-display.md — AG Grid vs AG Charts, module setup, column defs, chart options, integrated charting. Prefers mcp_fusion_search_framework. Consult for grids, charts, dashboards. Use assets/charts-decision-matrix.md for library selection.
agents/person-components.md — @equinor/fusion-react-person: PersonAvatar, PersonCard, PersonListItem, PersonPicker, PeoplePicker, PeopleViewer, PersonCell (AG Grid). DOM event pattern, valueGetter setup, pitfalls. Consult for any person display, search, or selection UI.
agents/code-quality.md — delegates convention checks (naming, TSDoc, TS strictness, intent comments) to fusion-code-conventions, aggregates findings. Run on every new/modified file before finalizing.
any types — TypeScript strict mode standard.feat:, fix:, refactor:, etc.).