posters_service:
- BackgroundStyle enum + tile stitcher for race posters
(Esri aerial / OSM Carto / CartoDB dark / CartoDB light / none)
- _resolve_circuit_geo: GeoJSON bbox centre + auto-zoom (no hand tuning),
falls back to Jolpica lat/lon + f1-locations.json zoom
- _draw_track_projected: project the layout's GeoJSON points into the
same window as the tile background, so the white outline aligns with
the actual track (the hand-drawn SVGs had arbitrary orientations)
- _render_world_locator: 140x140 CartoDB Dark inset at zoom 5 with a
red marker pinning the circuit on the continent
- _race_dark_overlay: dimming so the heading + footer stay legible
against any underlying tiles
- render_kometa_metadata: emits a Kometa-compatible YAML covering
every season 1950..current+1 with per-show + per-round url_poster
cdn-api:
- GET /posters/race/{name}/{year}.png supports ?bg= query param
- GET /kometa/formula-1-metadata.yml serves the generated config so
Kometa pulls it via metadata_files.url (auto-updates with schedule)
Formula 1™ circuits
A repository of Formula 1™ circuits in GeoJSON format (using .geo.json extension).
- Formula 1™ circuit tracks data in one GeoJSON file
- Interactive Map of Formula 1™ circuit tracks
- Points of F1™ circuits in GeoJSON format
- List of F1™ circuits in JSON format
| Location | Name | Grand Prix |
|---|---|---|
| Austin | Circuit of the Americas | United States Grand Prix |
| Baku | Baku City Circuit | Azerbaijan Grand Prix |
| Barcelona | Circuit de Barcelona-Catalunya | Spanish Grand Prix |
| Budapest | Hungaroring | Hungarian Grand Prix |
| Estoril | Autódromo do Estoril | Portuguese Grand Prix |
| Hockenheim | Hockenheimring | German Grand Prix |
| Imola | Autodromo Enzo e Dino Ferrari | San Marino / Emilia Romagna Grand Prix |
| Istanbul | Intercity Istanbul Park | Turkish Grand Prix |
| Jacarepaguá | Autódromo Internacional Nelson Piquet | Brazilian Grand Prix |
| Jeddah | Jeddah Corniche Circuit | Saudi Arabian Grand Prix |
| Las Vegas | Las Vegas Street Circuit | Las Vegas Grand Prix |
| Le Castellet | Circuit Paul Ricard | French Grand Prix |
| Lusail | Losail International Circuit | Qatar Grand Prix |
| Magny-Cours | Circuit de Nevers Magny-Cours | French Grand Prix |
| Melbourne | Albert Park Circuit | Australian Grand Prix |
| Mexico City | Autódromo Hermanos Rodríguez | Mexican Grand Prix |
| Miami | Miami International Autodrome | Miami Grand Prix |
| Monaco | Circuit de Monaco | Monaco Grand Prix |
| Montreal | Circuit Gilles-Villeneuve | Canadian Grand Prix |
| Monza | Autodromo Nazionale Monza | Italian Grand Prix |
| Nürburg | Nürburgring | German Grand Prix |
| Portimão | Autódromo Internacional do Algarve | Portuguese Grand Prix |
| Sakhir | Bahrain International Circuit | Bahrain Grand Prix |
| Sao Paulo | Autódromo José Carlos Pace - Interlagos | Brazilian Grand Prix |
| Scarperia e San Piero | Autodromo Internazionale del Mugello | Tuscan Grand Prix |
| Sepang | Sepang International Circuit | Malaysian Grand Prix |
| Shanghai | Shanghai International Circuit | Chinese Grand Prix |
| Silverstone | Silverstone Circuit | British Grand Prix |
| Singapore | Marina Bay Street Circuit | Singapore Grand Prix |
| Sochi | Sochi Autodrom | Russian Grand Prix |
| Spa Francorchamps | Circuit de Spa-Francorchamps | Belgian Grand Prix |
| Spielberg | Red Bull Ring | Austrian Grand Prix |
| Suzuka | Suzuka International Racing Course | Japanese Grand Prix |
| Yas Marina | Yas Marina Circuit | Abu Dhabi Grand Prix |
| Zandvoort | Circuit Zandvoort | Dutch Grand Prix |
Summary
Currently, the repository holds 35 out of 77 circuits that have hosted a Formula 1™ Grand Prix.
Altitude
Altitude data was mostly collected from the Highs and lows - which F1 track has the most elevation changes? article and reference the start/finish point. For other tracks, official websites and wiki pages were used as sources, or the nearby city's altitude, if no other and more accurate data were available.
Acknowledgment
Disclaimer
This repository is unofficial and is not associated in any way with the Formula 1 companies. F1, FORMULA ONE, FORMULA 1, FIA FORMULA ONE WORLD CHAMPIONSHIP, GRAND PRIX, and related marks are trademarks of Formula One Licensing B.V.
Formula 1™ circuits data are not official, and they are not approved nor endorsed by Formula One Licensing B.V.
License
The MIT License (MIT) - Copyright (c) 2019-2024 Tomislav Bacinger