Bluefish: Composing Diagrams with Declarative Relations
Josh Pollock, Catherine Mei, Grace Huang, Elliot Evans, Daniel Jackson, Arvind Satyanarayan
Abstract
Diagrams are essential tools for problem-solving and communication as they externalize conceptual structures using spatial relationships. But when picking a diagramming framework, users are faced with a dilemma. They can either use a highly expressive but low-level toolkit, whose API does not match their domain-specific concepts, or select a high-level typology, which offers a recognizable vocabulary but supports a limited range of diagrams. To address this gap, we introduce Bluefish: a diagramming framework inspired by component-based user interface (UI) libraries. Bluefish lets users create diagrams using relations: declarative, composable, and extensible diagram fragments that relax the concept of a UI component. Unlike a component, a relation does not have sole ownership over its children nor does it need to fully specify their layout. To render diagrams, Bluefish extends a traditional tree-based scenegraph to a compound graph that captures both hierarchical and adjacent relationships between nodes. To evaluate our system, we construct a diverse example gallery covering many domains including mathematics, physics, computer science, and even cooking. We show that Bluefish’s relations are effective declarative primitives for diagrams. Bluefish is open source, and we aim to shape it into both a usable tool and a research platform.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 4f161539-ca5a-4cd6-b34d-1f2723b434a0Cited by top-tier papers8
- The Shapes of Abstraction in Data Structure DiagramsDevamardeep Hayatpur, Brian Hempel, Richard Lin, Haijun XiaCHI 2025 · 7 citations
- Taking ASCII Drawings Seriously: How Programmers Diagram CodeDevamardeep Hayatpur, Brian Hempel, Kathy Chen, William Duan et al.CHI 2024 · 7 citations
- DataWink: Reusing and Adapting SVG-Based Visualization Examples with Large Multimodal ModelsLiwenhan Xie, Yanna Lin, Can Liu, Huamin Qu et al.IEEE VIS 2025 · 3 citations
- Nonvisual Support for Understanding and Reasoning about Data StructuresBrianna L. Wimer, Ritesh Kanchi, Kaija Frierson, Venkatesh Potluri et al.CHI 2026 · 2 citations
- GoFish: A Grammar of More Graphics!Josh Pollock, Arvind SatyanarayanIEEE VIS 2025 · 2 citations
Builds on8
- Gemini: A Grammar and Recommender System for Animated Transitions in Statistical GraphicsYounghoon Kim, Jeffrey HeerIEEE VIS 2020 · 61 citations
- Scout: Rapid Exploration of Interface Layout Alternatives through High-Level Design ConstraintsAmanda Swearngin, Chenglong Wang, Alannah Oleson, James Fogarty et al.CHI 2020 · 58 citations
- Penrose: from mathematical notation to beautiful diagramsKatherine Ye, Wode Ni, Max Krieger, Dor Ma'ayan et al.SIGGRAPH 2020 · 53 citations
- GoTree: A Grammar of Tree VisualizationsGuozheng Li, Min Tian, Qinmei Xu, Michael J. McGuffin et al.CHI 2020 · 44 citations
- CAST: Authoring Data-Driven Chart AnimationsTong Ge, Bongshin Lee, Yunhai WangCHI 2021 · 33 citations
Related papers
- How Domain Experts Create Conceptual Diagrams and Implications for Tool DesignDor Ma'ayan, Wode Ni, Katherine Ye, Chinmay Kulkarni et al.CHI 2020 · 19 citations
- Learning Diagrams: A Graphical Language for Compositional Training RegimesMason Lary, Richard Samuelson, Alexander Wilentz, Alina Zare et al.ICLR 2025
- From Navigation to Intention: Reframing the Web Experience through Goal-Driven InterfacesLuca Cordioli, Maristella MateraWWW 2026
- Diagramming Program Values by Spatial RefinementSiddhartha Prasad, Michael Tu, Karan Kashyap, Tim Nelson et al.PLDI 2026
- CoSE: Compositional Stroke EmbeddingsEmre Aksan, Thomas Deselaers, Andrea Tagliasacchi, Otmar HilligesNeurIPS 2020 · 37 citations
