A few years ago, I built a G6 + React hybrid renderer in an internal business tool. It was the React 17 era. Last week the project upgraded to React 18, and the core structure of the bridge survived — but a handful of specific things had to change.
This isn't a "look at my performance hack" post. The graph holds maybe 15 nodes at most. Performance was never the motivation.
The real motivation: I wanted G6's existence to be invisible from the business code's point of view. Whoever writes the UI for a node should just be writing a normal React component — import Antd, use hooks, connect Redux — with zero need to open the G6 docs.
This is the design, plus a post-mortem on what it looked like crossing a React major-version boundary.
What the bridge was actually for (not performance)






