b310-digital / b310-digital/teammapper
Implement D3 Simulation to add a force boundary
- Dominant language
- TypeScript
- Stars
- 496
- Forks
- 41
- Avg merge
- 2h 16m
- Merged PRs (30d)
- 11
Description
**Proposed feature**
Right now, nodes can be stretched out endlessly, which in turn can cause issues with browser-based limitations of the `` element. When a canvas element is too big, it can no longer be exported as an image.
One solution would be to add a "simple" bounding box (not so simple, since it'd need to be calculated every time we move a node). A more flexible solution would be to use D3's existing physics simulation capabilities to implement gravity. This would cause nodes to be "pulled" back to the center if they exceed canvas size. Ideally, this should be simpler to implement (since it is a global configuration and not node-based) and could be accompanied by a bounding box.
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names no files, tests, or entry points. Start by locating the canvas rendering and existing D3 simulation setup, then determine which boundary behavior is intended; done should prevent nodes from expanding the canvas beyond exportable limits.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- d3, typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100