Skip to main content

Building a Tournament Bracket Graphic with External Data

Learn how to build tournament bracket graphics in FUSE that pull data from external spreadsheets, with batch expression updates using ChatGPT.

L
Written by Luke McCoy
Updated today

External data sources allow FUSE graphics to display information from spreadsheets and APIs that isn't part of the standard LIGR data model. This guide walks through building a tournament bracket graphic that pulls bracket data from an external spreadsheet, mapping data columns to graphic fields, and using ChatGPT to efficiently batch-update expressions for multiple bracket rounds.

Prerequisites

  • Access to the FUSE graphics editor

  • A Rive file designed for tournament bracket display

  • An external data spreadsheet with bracket/round data (team names, scores, progression)

  • The spreadsheet must include a header row that FUSE can map to field names

Step-by-Step Guide

Step 1: Prepare your external data spreadsheet

Create a spreadsheet with your tournament bracket data. The first row must contain headers that will become field names in FUSE (e.g., Round1_Team1, Round1_Team2, Round1_Score1). Include all rounds from quarterfinals through to the final.

Step 2: Import the Rive bracket graphic into FUSE

Drag and drop your Rive bracket graphic file into the FUSE editor. The graphic should have text and image elements for each bracket position. FUSE will detect the Rive file's exposed inputs and make them available for data binding.

Step 3: Connect the external data source

In FUSE, navigate to the External Data section and connect your spreadsheet. FUSE reads the header row and creates named fields for each column. You can then reference these fields in expressions.

Step 4: Map data columns to graphic elements

For each bracket position in the graphic, create an expression that references the corresponding column from the external data. Repeat for scores, logos, and progression indicators.

Step 5: Batch-update expressions using ChatGPT

For a tournament bracket with many positions, export the expressions, then use ChatGPT to generate the full set for all rounds and positions. Provide the pattern for Round 1 and ask it to generate Rounds 2 through 4.

Step 6: Preview and verify bracket data

Use the FUSE preview to verify that all bracket data displays correctly. Check each round, ensure team names and scores are in the correct positions, and verify bracket progression logic.

Tips & Best Practices

  • External data spreadsheets must have a header row β€” FUSE uses these headers as field names for expressions.

  • Use ChatGPT to batch-create expressions when you have repetitive patterns across multiple bracket positions.

  • External data can come from Google Sheets, CSV files, or API endpoints β€” choose the format that best fits your workflow.

  • Test with sample data first before connecting live tournament data to catch any mapping issues early.

  • External data updates in the spreadsheet are reflected in the graphic without needing to re-publish.

Related Articles

  • Exporting & Importing Fuse Expressions

  • Using Rive Graphics in FUSE with External Data

  • Adding a Control Variable in FUSE

Did this answer your question?