geranium

Geranium

geranium logo
Geranium

Genomics Visualization Retrieval for Authoring with Multimodality

Citation

Publication: H. N. Nguyen, S. L’Yi, T. C. Smits, S. Gao, M. Zitnik and N. Gehlenborg, “Geranium: Multimodal Retrieval of Genomics Data Visualizations,” in IEEE Transactions on Visualization and Computer Graphics, doi: 10.1109/TVCG.2026.3683429.

Preprint on OSF.

@article{nguyen2026multimodal,
  author={Nguyen, Huyen N. and L'Yi, Sehi and Smits, Thomas C. and Gao, Shanghua and Zitnik, Marinka and Gehlenborg, Nils},
  journal={IEEE Transactions on Visualization and Computer Graphics}, 
  title={Geranium: Multimodal Retrieval of Genomics Data Visualizations}, 
  year={2026},
  volume={},
  number={},
  pages={1-17},
  doi={10.1109/TVCG.2026.3683429}}

Overview

Geranium is a multimodal retrieval system that helps researchers efficiently find genomics visualization examples using image, text, or specification-based queries. Search results function as adaptable templates/scaffolds that researchers can modify with their own data and design preferences.

image

Features

image

image

Installation

The application consists of two components: a server and a client that need to be run separately.

Server Installation

  1. Navigate to the server directory:

     cd server
    
  2. Create and activate a Python virtual environment:

     python3 -m venv .venv
     source .venv/bin/activate
    
  3. Install the required dependencies:

     python3 -m pip install -r requirements.txt
    

Alternatively, if using uv package manager: uv pip install -r requirements.txt

  1. Start the server on port 5001:

     flask --app app.py run --debug --port 5001
    

The server will start on http://localhost:5001.

Client Installation

  1. Open a new terminal and navigate to the client directory:

     cd client
    
  2. Install the necessary dependencies:

     npm install
    
  3. Start the client application:

     npm run dev
    

Once started, the client will be available at http://localhost:5173/.

Usage

After both the server and client are running, open your browser and navigate to http://localhost:5173/ to start using Geranium.

Troubleshooting

If the client does not run properly, you may need to update your Node.js and/or Vite versions.

Check your Node.js version

node -v

If you are using an older version, consider updating Node.js.

Reinstall dependencies

Sometimes deleting the node_modules folder and reinstalling dependencies can resolve issues:

rm -rf node_modules
npm install

Update Vite

To update Vite to the latest version, run:

npm update vite

Contributing

Contributions are welcome! If you’d like to contribute, please open a new issue or submit a pull request. Please read CONTRIBUTING.md to find more guidelines.