Commit graph

10 commits

Author SHA1 Message Date
Viktor Barzin
aa6760cb0f
fix fullscreen button: use x-show instead of x-if templates
x-if with template tags inside a button element causes scope issues.
Switch to x-show on SVG elements directly.
2026-03-23 00:42:10 +02:00
Viktor Barzin
f8bbb2e993
add fullscreen toggle to graph visualization
Expand/collapse button in bottom-right corner lets the graph fill the
entire viewport for better exploration. Escape key exits fullscreen.
Category filters overlay in top-left when fullscreen.
2026-03-23 00:37:24 +02:00
Viktor Barzin
f3e61d8c77
feat: add Tags browser tab with tag cloud and filtered memory view
Add GET /api/tags endpoint returning distinct tags with counts,
add ?tag= filter to GET /api/memories, and a new Tags tab in the
Neural Archive UI with searchable tag cloud and expandable memory cards.
2026-03-23 00:29:02 +02:00
Viktor Barzin
9edb381c85
fix: graph SVG fills container height, fallback to viewport calc 2026-03-23 00:06:55 +02:00
Viktor Barzin
e8ae2b50ea
fix: graph tab breaks out of max-w-7xl container for full-width layout 2026-03-23 00:03:21 +02:00
Viktor Barzin
44338d0eff
feat: fullscreen graph layout, category legend, and node labels
- Graph container fills viewport (calc(100vh - 180px)) instead of 500px
- Node detail panel overlays graph as absolute-positioned panel
- Category legend with colored dots fixed in SVG top-left corner
- High-importance nodes (>= 0.7) show truncated content labels
2026-03-22 23:55:51 +02:00
Viktor Barzin
e5a69d4e3e
fix: graph visualization not rendering due to x-show timing
- Replace $nextTick with setTimeout(100) for D3 render (same fix as dashboard)
- Re-render graph when switching back to tab (not just on first load)
- Fallback width from parent element when container clientWidth is 0
2026-03-22 23:43:05 +02:00
Viktor Barzin
c130bcff33
feat: sharing tests, property tests, tag-share UI, inline errors, route fix
- Add 10 sharing endpoint tests (share/unshare memory, tag shares, shared-with-me,
  my-shares, recall with shared, update permission checks)
- Add hypothesis property-based tests for model validation (roundtrip, bounds,
  enum, sort_by, limit)
- Tighten model validation: sort_by Literal, limit ge=1/le=500, tags/keywords max_length
- Fix dashboard shared_with_me stat to include tag-based shares
- Add tag-sharing management UI (share/remove tags, user typeahead)
- Replace alert() with inline error messages
- Fix route ordering bug: share-tag routes before {memory_id} parameterized routes
2026-03-22 23:36:13 +02:00
Viktor Barzin
95dd937765
UI improvements: add memory form, fix dashboard charts, Neural Archive theme
- Add "New Memory" button with collapsible form (content, category, tags, importance)
- Add share memory with user typeahead via new GET /api/users endpoint
- Fix dashboard charts not rendering (replace $nextTick with setTimeout for x-if timing)
- Redesign theme: warm walnut/amber palette, Playfair Display + JetBrains Mono fonts
- Update Chart.js and D3 graph colors to match warm theme
2026-03-22 21:30:58 +02:00
Viktor Barzin
78e737146e
add web management UI for browsing, searching, and visualizing memories
Alpine.js + Tailwind CSS (CDN) served by FastAPI StaticFiles — no build step,
zero Docker changes. Features: memory browser with inline edit/delete, full-text
search with debounce, D3.js force-directed graph, Chart.js stats dashboard.
New endpoints: GET /api/stats, GET /api/categories, pagination on GET /api/memories.
2026-03-22 21:10:53 +02:00