When loading very large schemas the SVGRender.renderSvg method takes a very long time to calculate the svg. In larger projects the schemas don't change that often, so caching the svg string is a good way to avoid having to recalculate the svg on every page load.
I used a md5 hash of TypeGraph to identify schemas and use the hash as the key for caching using localStorage.
This could probably be improved with eviction strategies or other fancier mechanisms but first I wanted to make sure there was interest in the feature.
When loading very large schemas the
SVGRender.renderSvg
method takes a very long time to calculate the svg. In larger projects the schemas don't change that often, so caching the svg string is a good way to avoid having to recalculate the svg on every page load.I used a md5 hash of TypeGraph to identify schemas and use the hash as the key for caching using localStorage.
This could probably be improved with eviction strategies or other fancier mechanisms but first I wanted to make sure there was interest in the feature.