a8bb687349
- New /graph route with D3 force simulation (GraphView.vue) - Tag nodes as first-class graph nodes (string IDs "tag:name") — clicking navigates to /notes?tags=name; tags shown by default - Invisible project hub nodes attract project members into clusters - Physics panel with live sliders: repulsion, link distance, link strength, project pull, gravity (forceX/forceY, not forceCenter) - Wikilink edges retain directed arrowheads; tag edges are thin, no arrowhead - Graph nav link in AppHeader; `g` shortcut in App.vue - Backend: build_note_graph() emits tag nodes + note→tag edges instead of O(n²) note→note shared-tag mesh Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
34 lines
802 B
JSON
34 lines
802 B
JSON
{
|
|
"name": "fabledassistant-frontend",
|
|
"private": true,
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vue-tsc --noEmit && vite build",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"d3": "^7",
|
|
"@tiptap/extension-link": "^2.11.0",
|
|
"@tiptap/extension-placeholder": "^2.11.0",
|
|
"@tiptap/pm": "^2.11.0",
|
|
"@tiptap/starter-kit": "^2.11.0",
|
|
"@tiptap/suggestion": "^2.11.0",
|
|
"@tiptap/vue-3": "^2.11.0",
|
|
"pinia": "^2.2.0",
|
|
"vue": "^3.5.0",
|
|
"marked": "^15.0.0",
|
|
"dompurify": "^3.1.0",
|
|
"vue-router": "^4.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/d3": "^7",
|
|
"@types/dompurify": "^3.0.0",
|
|
"@vitejs/plugin-vue": "^5.1.0",
|
|
"typescript": "~5.6.0",
|
|
"vite": "^6.0.0",
|
|
"vue-tsc": "^2.1.0"
|
|
}
|
|
}
|