[GH-ISSUE #176] [Feature Request] A dynamic tyre degradation visualization #41

Closed
opened 2026-05-07 00:18:06 +02:00 by BreizhHardware · 3 comments

Originally created by @bokiiiiiii on GitHub (Jan 19, 2026).
Original GitHub issue: https://github.com/IAmTomShaw/f1-race-replay/issues/176

Description: I would like to propose a new visualization feature for the leaderboard: a dynamic water-level tyre degradation indicator.

PR: #177

Currently, the leaderboard displays static compound icons. While informative, race engineers often need to track stint margins and tyre health relative to the expected lifespan on a specific track. This feature would transform the tyre icon into a depleting container that visually represents remaining life.

Proposed Implementation:

  • Data Layer: Extract TyreLife from the FastF1 telemetry data. Implement a session-wide max_tyre_life_map that identifies the longest recorded stint for each compound across all drivers. This serves as a dynamic 100% capacity baseline for different tracks.

  • UI Layer: Use a clipping effect (via window.ctx.scissor) to render the bright compound icon over a darkened background, creating a water-level depletion effect as tyre_health_ratio decreases. Additionally, a small numerical tyre_life counter can be rendered at the bottom-right of the icon to provide precise stint-age context at a glance without over-cluttering the UI.

  • Alignment with Roadmap: This feature aligns with the "Race Insight Charts" and "Tyre Strategies" goals mentioned in the roadmap. It provides deep insight into stint management without cluttering the UI.

  • Visualization:
    Image

Originally created by @bokiiiiiii on GitHub (Jan 19, 2026). Original GitHub issue: https://github.com/IAmTomShaw/f1-race-replay/issues/176 ### Description: I would like to propose a new visualization feature for the leaderboard: a dynamic water-level tyre degradation indicator. **PR:** #177 Currently, the leaderboard displays static compound icons. While informative, race engineers often need to track stint margins and tyre health relative to the expected lifespan on a specific track. This feature would transform the tyre icon into a depleting container that visually represents remaining life. **Proposed Implementation:** - Data Layer: Extract TyreLife from the FastF1 telemetry data. Implement a session-wide max_tyre_life_map that identifies the longest recorded stint for each compound across all drivers. This serves as a dynamic 100% capacity baseline for different tracks. - UI Layer: Use a clipping effect (via window.ctx.scissor) to render the bright compound icon over a darkened background, creating a water-level depletion effect as tyre_health_ratio decreases. Additionally, a small numerical tyre_life counter can be rendered at the bottom-right of the icon to provide precise stint-age context at a glance without over-cluttering the UI. - Alignment with Roadmap: This feature aligns with the "Race Insight Charts" and "Tyre Strategies" goals mentioned in the roadmap. It provides deep insight into stint management without cluttering the UI. - Visualization: <img width="316" height="665" alt="Image" src="https://github.com/user-attachments/assets/a8ebb85e-6360-427d-a3ff-c9079662e83b" />
Author
Owner

@bokiiiiiii commented on GitHub (Jan 19, 2026):

@IAmTomShaw Plz help check, thx!

<!-- gh-comment-id:3769674173 --> @bokiiiiiii commented on GitHub (Jan 19, 2026): @IAmTomShaw Plz help check, thx!
Author
Owner

@bokiiiiiii commented on GitHub (Jan 20, 2026):

This could be merged with #168

<!-- gh-comment-id:3775408202 --> @bokiiiiiii commented on GitHub (Jan 20, 2026): This could be merged with #168
Author
Owner

@Vishnu-Cyber-Blip commented on GitHub (Jan 30, 2026):

@bokiiiiiii can u check with #196. I have been able to use your work and code withing my UI. Since it your work also being displayed, I just wanna ask if it is okay since i am essentially adapting your code to fit mine.
Cheers

<!-- gh-comment-id:3823632628 --> @Vishnu-Cyber-Blip commented on GitHub (Jan 30, 2026): @bokiiiiiii can u check with #196. I have been able to use your work and code withing my UI. Since it your work also being displayed, I just wanna ask if it is okay since i am essentially adapting your code to fit mine. Cheers
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/f1-race-replay#41
No description provided.