Overview
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
Before you begin, make sure you have the following in place: 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); and a spreadsheet that includes a header row that FUSE can map to field names.
Step-by-Step Guide
Once you have your prerequisites ready, follow the steps below to build your tournament bracket graphic.
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.
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.
[SCREENSHOT: the FUSE editor showing a Rive bracket graphic just after being imported, with exposed inputs listed]
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, which you can then reference in expressions.
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 this for scores, logos, and progression indicators.
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.
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 the bracket progression logic.
[SCREENSHOT: the FUSE preview panel displaying a fully mapped tournament bracket with team names and scores across all rounds]
Tips
• 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.
