added sharding and partitioning nodes - #143
Open
Dhanwi wants to merge 1 commit into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds “Data Partitioning and Sharding” technique nodes to the renderer’s component library so users can model hashing/sharding flows in diagrams, addressing issue #63.
Changes:
- Added four new node definitions (
hashing,sharding,partition-node,shard-node) to the core node registry with default metrics and Lucide icons. - Extended theming to include dedicated color palettes for the new technique nodes.
- Added a new sidebar catalog category (“Data Partitioning”) containing the four new draggable nodes.
- Updated
ServiceNodeicon routing to render the new icons on-canvas.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
src/renderer/src/config/themeConfig.ts |
Adds theme keys and Tailwind classes for hashing/sharding/partition/shard lookups. |
src/renderer/src/config/nodeRegistry.ts |
Registers the four new nodes with icons, lookup keys, and default data. |
src/renderer/src/config/catalogConfig.ts |
Adds a new catalog category and exposes the new nodes in the sidebar. |
src/renderer/src/components/nodes/ServiceNode.tsx |
Extends ICON_LOOKUP so the new node iconKeys render correct Lucide icons. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
This PR introduces the new Data Partitioning and Sharding technique components to the simulator, resolving #63.
These new nodes allow users to model data distribution, request routing, and physical/logical dataset segmentation at the technique and architecture level.
Changes Made
This PR modifies the core node registry, UI mapping, and styling to cleanly integrate four new node types (
hashing,sharding,partition-node,shard-node):src/renderer/src/config/nodeRegistry.tslucide-reactfor the new icons:Hash,Boxes,SplitSquareHorizontal, andSquareStack.NODE_REGISTRYwith objects for the four new nodes (defined asserviceNode), complete with their load/throughput default metrics and visual descriptors.src/renderer/src/config/themeConfig.tsTHEME_CONFIGobject for each new node key (hashing-> Fuchsia,sharding-> Indigo,partition-> Cyan,shard-> Emerald) to maintain consistent aesthetics with existing components.src/renderer/src/config/catalogConfig.tsData Partitioningcategory to the left-hand UI sidebar catalog.src/renderer/src/components/features/nodes/ServiceNode.tsxICON_LOOKUProuting object, ensuring the canvas dynamically renders them once dropped.Output