You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AGENTS.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,13 +10,16 @@
10
10
- Read `docs/deployment.md` and `docs/release-checklist.md` before changing CI or release behavior.
11
11
- When touching the new layout/mobile flow, read `docs/ux-effects-plan.md`.
12
12
- When touching the React Flow renderer or alternate view modes, read `docs/react-flow-structured-view-plan.md`.
13
+
- When touching public attribution, Wikimedia references, or API-identification behavior, also check `README.md` and `NOTICE`.
13
14
14
15
## Working Rules
15
16
- Read the existing code and docs before changing behavior.
16
17
- Prefer minimal, local changes over broad rewrites.
17
18
- If a task spans multiple files, the most likely hotspots are `src/App.tsx`, `src/GraphManager.ts`, `src/components/*`, `src/features/structured-view/*`, `src/hooks/useGraphState.ts`, and matching tests under `src/`.
18
19
- Do not commit generated local artifacts such as `.preview.*` or `.playwright-cli/`.
19
20
- If instructions or release steps seem stale, call that out explicitly in the handoff.
21
+
- For graph-layout changes, sanity-check first-load behavior with at least two root topics in `web` mode before calling the UX done.
22
+
- For Wikimedia/API wording, verify against official Wikimedia policy pages and keep the UI notice, `README.md`, and `NOTICE` aligned.
- This repo is currently Apache-2.0. That means attribution and branding help establish authorship, but they do not prevent someone else from reusing or forking the code under the license terms.
55
+
- Set `VITE_WIKI_API_CONTACT_EMAIL` so requests send a descriptive `Api-User-Agent` header to Wikipedia.
56
+
- The app rate-limits and caches Wikipedia requests, and `VITE_RECAPTCHA_SITE_KEY` can be used to reduce automated abuse on the client side.
57
+
- Wikipedia is a trademark of the Wikimedia Foundation. WikiWebMap is an independent project and is not affiliated with or endorsed by the Wikimedia Foundation.
58
+
51
59
## Attribution
52
-
- Wikipedia/Wikimedia content is licensed under CC BY-SA 4.0. This project is not affiliated with the Wikimedia Foundation.
60
+
- Wikipedia/Wikimedia content is licensed under CC BY-SA 4.0.
61
+
- This project is not affiliated with or endorsed by the Wikimedia Foundation.
Copy file name to clipboardExpand all lines: docs/development-plan.md
+9Lines changed: 9 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,9 @@ This repo is now in a safer release-ready state than it was at clone time:
9
9
- Mobile guidance and destructive actions are safer.
10
10
- The repo now has unit coverage for `WikiService`, `runPathfinder`, and `useGraphState` reset/restore behavior.
11
11
- Session diagnostics now include both connection logs and captured client runtime errors.
12
+
-`web` mode now seeds root topics from root-count-aware positions instead of total-node-count drift, which keeps first-load layouts more balanced.
13
+
- Project attribution and external links now live with the bottom-left graph tools on desktop, with matching ownership/Wikimedia notice language in the UI and docs.
14
+
- Neutral placeholder art now avoids leaning on Wikimedia-looking fallback branding when a topic has no thumbnail.
12
15
13
16
Renderer planning note:
14
17
- The next radically different visualization experiment is a React Flow-based `Structured View`; see `docs/react-flow-structured-view-plan.md`.
@@ -115,6 +118,12 @@ Recommended order:
115
118
| P6 | UX | Improve onboarding and mobile drawer polish | Increases usability and product trust | Medium | Low | Phase 5 |
116
119
| P7 | Observability | Add remote client error reporting | Makes live issues easier to diagnose after release | Medium | Low | Phase 5 |
117
120
121
+
## Immediate next improvements
122
+
123
+
1. Add a one-click `Spread Roots` action so users can quickly recreate the “pull major topics apart, let the inner nodes congregate” layout they naturally discovered.
124
+
2. Turn current link-strength scoring into clearer visual language with a legend entry for strong ties, shared-neighbor ties, and cross-branch bridges.
125
+
3. Add a small server-side or edge cache/proxy layer for Wikipedia requests so abuse control, request budgets, and API identification are no longer purely client-enforced.
126
+
118
127
## Branch strategy
119
128
120
129
- Use a release PR to merge the current hardening work to `main`.
Copy file name to clipboardExpand all lines: docs/ux-effects-plan.md
+28-3Lines changed: 28 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,6 +31,10 @@ Core principles:
31
31
- New users do not get a strong explanation of what to do first.
32
32
- Suggested paths help, but the screen still relies on inference.
33
33
34
+
### 1a. First-load spatial rhythm still needs refinement
35
+
- Root topics now seed more intelligently, but web mode still needs stronger first-load balance when multiple major topics are added quickly.
36
+
- The most successful layouts still happen after a user drags roots outward and lets inner topics settle between them.
37
+
34
38
### 2. Mobile feels functional, not polished
35
39
- The mobile sheets are safer now, but they still feel like adapted desktop UI.
36
40
- Important actions are present, but the experience is not yet elegant.
@@ -39,6 +43,10 @@ Core principles:
39
43
- The search box, graph, connection context, settings, and diagnostics all compete.
40
44
- There is not yet a strong “primary task” rhythm on load.
41
45
46
+
### 3a. Topic visuals are improving but still have room to mature
47
+
- Nodes now have softer halos and better root emphasis, but the graph still does not fully communicate connection importance at a glance.
48
+
- Link weight and branch significance are still more present in the data than in the visuals.
49
+
42
50
### 4. Motion is mostly utilitarian
43
51
- The graph has energy, but UI transitions and contextual reveals are still basic.
44
52
- There is room for effects that make cause-and-effect easier to understand.
@@ -48,6 +56,23 @@ Core principles:
48
56
49
57
## Recommended rollout
50
58
59
+
### Phase 0: Space and trust pass
60
+
Goal:
61
+
- Make the first-loaded graph feel more balanced and make project ownership/independence clearer without crowding the main panel.
62
+
63
+
Changes:
64
+
- Keep root topics on soft perimeter anchors in `web` mode instead of letting total node count fling them outward.
65
+
- Preserve the lower-left authorship/trust strip as part of the graph tool area rather than the intro panel.
66
+
- Continue using neutral custom placeholder artwork instead of anything that could read as Wikimedia branding.
67
+
68
+
Suggested UI work:
69
+
- Tune soft-anchor strength and perimeter radius logic in [GraphManager.ts](/C:/Users/monro/Codex/WikiWebMap/src/GraphManager.ts)
70
+
- Tune first-seed and multi-seed spawn logic in [useGraphState.ts](/C:/Users/monro/Codex/WikiWebMap/src/hooks/useGraphState.ts)
71
+
- Keep attribution and external-link surfaces coordinated between [GraphControls.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/GraphControls.tsx), [SearchOverlay.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/SearchOverlay.tsx), and [README.md](/C:/Users/monro/Codex/WikiWebMap/README.md)
72
+
73
+
Risk:
74
+
- Low
75
+
51
76
### Phase 1: Clarity pass
52
77
Goal:
53
78
- Make the product easier to understand in the first minute.
@@ -151,11 +176,11 @@ Risk:
151
176
## High-impact UX tasks
152
177
153
178
### Top 5 to do next
154
-
1. Add a stronger first-run search/onboarding block in [SearchOverlay.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/SearchOverlay.tsx)
179
+
1. Add a “root spread” assist in [GraphManager.ts](/C:/Users/monro/Codex/WikiWebMap/src/GraphManager.ts) so major topics land in cleaner perimeter positions before the user drags them
155
180
2. Convert connection context into a more deliberate mobile/desktop drawer pattern in [ConnectionStatusBar.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/ConnectionStatusBar.tsx)
156
-
3. Add motion rules and shared transitions in [index.css](/C:/Users/monro/Codex/WikiWebMap/src/index.css)
181
+
3. Add weighted link styling and legend language so strong/shared-topic bridges read immediately in [GraphManager.ts](/C:/Users/monro/Codex/WikiWebMap/src/GraphManager.ts) and [GraphControls.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/GraphControls.tsx)
157
182
4. Polish the node details sheet in [NodeDetailsPanel.tsx](/C:/Users/monro/Codex/WikiWebMap/src/components/NodeDetailsPanel.tsx)
158
-
5. Add a more expressive path-result reveal in [GraphManager.ts](/C:/Users/monro/Codex/WikiWebMap/src/GraphManager.ts)
183
+
5. Add motion rules and shared transitions in [index.css](/C:/Users/monro/Codex/WikiWebMap/src/index.css)
0 commit comments