coco-research/journey-map
> Loads full context for a React Flow (@xyflow/react) user journey mapping project. Use when working on, extending, debugging, or building features for "work on journey map", "build user journey", "react flow journey project", "journey-map app", or any request to add features like swimlanes, emotion curves, persona nodes, touchpoints, or pain point markers.
npx skills add https://github.com/coco-research/coco --skill journey-map
"Locating the Project" below before running any commands.
@xyflow/react (React Flow v12)Before making changes, find the project root:
find "$HOME" -maxdepth 5 -iname "journey-map" -type d 2>/dev/null
Run from the project root located above:
npm run dev # start dev server (Vite)
npm run build # production build
npm run preview # preview build
Single package: @xyflow/react (React Flow v12). There is no AntV X6
dependency — the project fully migrated off X6, and no --legacy-peer-deps
flag is needed on React 19.
See references/packages.md for imports, node pattern, layout constants, file structure.
| Feature | Mechanism |
|---|---|
| Swimlanes (persona rows) | swimlaneBg node type — wide colored band, zIndex=0 |
| Stage headers + narratives | stageHeader / stageNarr node types |
| Touchpoint cards | touchpoint node — seq badge, timing chip, emoji, title, badges |
| Emotion curve | EmotionCurve.tsx SVG component below canvas |
| Ad-hoc cross-flow | AdHocFlow.tsx component below canvas |
| Pan + zoom | React Flow built-in |
| Minimap | React Flow <MiniMap> |
| Controls | React Flow <Controls> |
| Persona focus/dim | focusPersona state → opacity on non-focused touchpoints |
| Detail panel | Click touchpoint → slide-in right panel |
references/packages.mdgraph engine this project uses.
Take coco-research/journey-map from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.