How jef-sure/fit-visualizer works
FIT Visualizer is a VS Code extension for viewing local FIT activities, analyzing training history, and optionally using Copilot for AI analysis. Its main workflow opens or indexes FIT files, parses and stores activity data, then presents charts, maps, segments, and comparisons in an interactive editor. The README also documents manual activities, heart-rate profiles, calibration, and bulk re-analysis. The sampled source supports the editor/chart and storage relationships; some deeper service wiring is inferred only from documented capabilities, so uncertain links are omitted.
Main entry points: activity-webview.js Activity editor · extension.js Extension services · database-schema.js Local activity database · commands.js Commands and editor
Components 20
VS Code Entry
- Commands and editor
commands.js - Extension services
extension.js
Activity Processing
- FIT parsing
fit-files.js - Activity summary
activity-summary.js - Segmentation and calibration
extension.js - Manual activities
manual-activity.js
Activity Explorer
- Activity editor
activity-webview.js - Chart model and rendering
chart-model.js - Chart data mapping
chart-data.js - SVG chart rendering
chart-svg.js - Localized glossary
glossary.js - UI localization
ui-strings.js
Training Insights
- Heart-rate zones
heart-rate.js - AI analysis and comparison
analysis.js - History and records
extension.js
Local Data
- Local activity database
database-schema.js
Other components
- Cyclist
- VS Code
- FIT files
- Copilot model
Connections 29
- Cyclist → VS Code: opens extension
- VS Code → Commands and editor: invokes commands
- Commands and editor → Extension services: requests services
- Cyclist → FIT files: selects activity
- Commands and editor → FIT files: opens or indexes
- Extension services → FIT parsing: parses files
- FIT parsing → Activity summary: supplies records
- Extension services → Segmentation and calibration: computes segments
- Extension services → Local activity database: reads and writes
- Activity summary → Local activity database: stores summary data
- Extension services → Manual activities: manages manual entries
- Manual activities → Local activity database: stores activity
- Commands and editor → Activity editor: opens editor
- Extension services → Activity editor: provides activity data
- Activity editor → Chart model and rendering: builds chart views
- Activity editor → Chart data mapping: maps records
- Activity editor → SVG chart rendering: renders chart SVG
- Chart model and rendering → Chart data mapping: extracts chart series
- Chart model and rendering → SVG chart rendering: renders geometry
- Activity editor → Heart-rate zones: computes zone display
- Activity editor → Localized glossary: localizes terms
- Activity editor → UI localization: formats interface
- Extension services → AI analysis and comparison: requests analysis
- AI analysis and comparison → Copilot model: sends prompts
- Extension services → History and records: loads training context
- History and records → Local activity database: reads activity history
- AI analysis and comparison → Local activity database: persists analyses
- Activity editor → Extension services: requests analysis or comparison
- Cyclist → Activity editor: reviews activity