static-export
Use when the user works on demo personas, localStorage persistence, or GitHub Pages static-export behaviour.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when the user works on demo personas, localStorage persistence, or GitHub Pages static-export behaviour.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when the user adds or modifies a Next.js API route under ui/src/app/api/.
Use when the user works on EHDS articles, DSP protocol, DCP credentials, ODRL policies, or the audit trail.
Use when the user works on the force-directed graph explorer, layer colours, persona views, or node filtering.
Use when the user works on authentication, Keycloak configuration, OIDC, roles, or JWT claims.
Use when the user adds nodes, relationships, constraints, or indexes to the Neo4j knowledge graph, or edits any *.cypher file.
Use when the user adds E2E tests, Playwright specs, or journey coverage.
| name | static-export |
| description | Use when the user works on demo personas, localStorage persistence, or GitHub Pages static-export behaviour. |
Sources: ui/src/lib/use-demo-persona.ts, ui/src/lib/auth.ts (DEMO_PERSONAS),
.claude/rules/code-style.md (static export guards), CLAUDE.md gotcha #3.
IS_STATIC = process.env.NEXT_PUBLIC_STATIC_EXPORT === "true" as a module-top
constant; in static mode fetchApi() serves /mock/*.json for GET and a
synthetic { ok: true } for mutations.useDemoPersona() unconditionally (hooks rule).ui/src/components/Navigation.tsx nav groups.patient_profile_patient1.json for ?patientId=P1).ui/__tests__/e2e/journeys/19-static-github-pages.spec.ts
via the setPersona(page, username) localStorage helper — never mock
next-auth/react in E2E (.claude/rules/testing.md).Page works in BOTH modes: live (API route) and static (mock fixture). If it only works in one, the task is not done.