Bluefish: Composing Diagrams with Declarative Relations
Name
3654777.3676465.pdf
Size
5.66 MB
Format
Adobe PDF
Checksum (MD5)
9844369d784dd848661a126ebf495af5
Author(s) • • • • •
Pollock, Josh
Mei, Catherine
Huang, Grace
Evans, Elliot
Jackson, Daniel
Satyanarayan, Arvind
Date Issued
October 13, 2024
Publisher
ACM|The 37th Annual ACM Symposium on User Interface Software and Technology
Citation
Pollock, Josh, Mei, Catherine, Huang, Grace, Evans, Elliot, Jackson, Daniel et al. 2024. "Bluefish: Composing Diagrams with Declarative Relations."
Version
Final published version
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.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Creative Commons Attribution
Persistent DSpace Link
DOI of Published Version
https://doi.org/10.1145/3654777.3676465