klarna-incubator / gram

Gram is Klarna's own threat model diagramming tool
Apache License 2.0
257 stars 12 forks source link

Benchmark on Board react component render #98

Open Tethik opened 2 months ago

Tethik commented 2 months ago

The Board component is the component is the one that renders the Diagram view inside Gram. The component is very complex and making changes within it can degrade the clientside performance/usability of the diagram. Some passes have been made to optimize the render, however these have been based on just our gut feeling most of the time of how it "feels" to use the diagram.

It would be good to have an actual measurement to more exactly determine how performant the Board is, some sort of automatic benchmark (e.g. render time of a large diagram) and have that be detected if it is slower to render when a new feature is added.