MemoryGraph - revamped#627
Merged
nexxeln merged 36 commits intosupermemoryai:mainfrom Dec 28, 2025
Merged
Conversation
…tays still instead of following the doc.
…e-based when idle
…ory leak fix (cleanup deleted nodes), and updating node/edge at the same time instead of one after another.
…pares with k=15 neighbors)
… right one for bugfix (edge culling)
…pdated doc hover effect to surround the node instead of overlapping it.
…ry calculations during smooth pan/zoom animations
…ioning logic to appear besides the node with a clear 20px gap
… animations and physics
…cumulation when nodes are selected rapidly, ex. slideshow)
…tly stopping physics after slideshow ends
Experiment/graph UI improvements
Experiment/graph UI improvements
… updated the Changelog.md file to include dependency installation
nexxeln
suggested changes
Dec 23, 2025
Contributor
nexxeln
left a comment
There was a problem hiding this comment.
getting this error on the playground
## Error Type
Runtime InvalidStateError
## Error Message
CanvasRenderingContext2D.scale: Canvas exceeds max size.
at zn</< (../../packages/memory-graph/src/components/graph-canvas.tsx:967:9)
at ui (../../packages/memory-graph/src/components/memory-graph.tsx:728:6)
at Home (src/app/page.tsx:274:7)
## Code Frame
965 |
966 | const ctx = canvas.getContext("2d")
> 967 | ctx?.scale(dpr, dpr)
| ^
968 | }, [width, height, dpr])
969 | // -----------------------------------------------------------------------
970 |
Next.js version: 16.0.3 (Turbopack)
Contributor
Author
|
@nexxeln check now? |
Contributor
…h from canvas jsx element (dimension conflict)
Contributor
Author
|
there were 2 potential issues which i addressed
lmk if its still not working |
nexxeln
suggested changes
Dec 24, 2025
Contributor
nexxeln
left a comment
There was a problem hiding this comment.
great work dude looks awesome
could you please refactor the inline styles into vanilla extract
nexxeln
suggested changes
Dec 24, 2025
…ting Record data, also changed doc similarity color.
Contributor
Author
|
@nexxeln done with the changes. I will be travelling both today and tomo, so wont be as active for a while. Also i have shared the repo access with you, if you want you can contribute as well. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Memory Graph Changelog
Development Setup
To test changes, run these commands in separate terminals:
Terminal 1 - Install the required dependencies:
Terminal 1 - Build memory-graph in watch mode:
Terminal 2 - Run the playground:
Then open http://localhost:3000 in your browser.
Features
Slideshow Mode
Auto-cycling through nodes with smooth animations and physics simulation
Node Popover with Background Dimming
Floating popover with smart positioning and focus dimming effect
Document Type Icons
Canvas-rendered icons centered on document cards
Physics-Driven Layout
Simplified initial positioning, letting physics create natural layouts
Updated Color Scheme
Refined palette for better contrast and readability
Bug Fixes
Edge Viewport Culling
Fixed edges disappearing during zoom/pan
Memory Nodes Follow Parents
Memory nodes now move with parent documents when dragged
Performance
k-NN Similarity Algorithm
Reduced from O(n²) to O(n·k)
Memory Leak Fix
NodeCache now cleans up deleted nodes properly
Race Condition Fix
Atomic node/edge updates eliminate NaN positions
Canvas Rendering Optimizations
Reduced per-frame overhead and improved rendering efficiency
Node Limiting & Memory Management
Smart memory limiting prevents performance issues with large datasets
maxNodesprop limits total memory nodes (default: 500 in playground)