-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Visualization
DAG visualizations greatly improve the user experience, but they are also a Pandora's Box of scope creep. rixpress already supports 3 backends for graphs: visNetwork, ggdag, and GraphViz (DOT; for CI). And each one is a magnet for feature requests.
To simplify the visualization feature set, what about using mermaid.js instead of ggdag or GraphViz? Mermaid graphs are just text, and they are very easy to generate without any additional R packages. For CI, you could use https://github.com/AlexanderGrooff/mermaid-ascii, which I think would produce graphs that are more readable and visually appealing than GraphViz can render (e.g. https://github.com/b-rodrigues/rixpress_demos/actions/runs/16252270236/job/45883546684#step:9:11).
visNetwork might only be necessary if you expect enormous pipelines whose graphs can only be explored interactively. If you do decide to keep rixpress::rxp_visnetwork(), I suggest keeping the feature set simple and tightly scoped. (Maybe it would also be a good idea to disable physics to improve rendering performance for large graphs.) visNetwork is great at zooming in and out of graphs of pretty much any size, but from experience developing targets::tar_visnetwork(), I have found it does not excel at creating nice-looking polished graphs. I think mermaid.js is much better at feature-rich pretty graphs.