The mesh builds the CDN from this repository and a commit (novox/hq ADR 0069); registry-api.novox.be, where HAL's image came from, is retired, so the running container can no longer be re-pulled. The HAL module.yml and service/docker-compose.yml retire with HAL. The Kometa metadata links every poster to this service's own address, which was the literal https://f1-circuits.zurag.be. It is now F1_CIRCUITS_BASE_URL, written by the mesh from the route's name (${bound:route:name}, mesh-controller #149) - falling back to the old address, so HAL's deployment behaves as before. The tile user agent follows it. The poster cache is a placed directory mounted at /app/cache, as HAL's /services/f1-circuits/cache was. The image was built from unpinned pip installs; service/requirements.txt now pins the exact set the running container has (pip freeze), and the base is python 3.12.13-alpine3.24 by digest (a later alpine 3.24 patch than the running build's 3.24.0 - the older digest is no longer tagged). The slug "f1" keeps the route login within 20 characters on any machine. Verified: the manifest parses on mesh-controller main and #149 and renders for a zurag.be node (F1_CIRCUITS_BASE_URL=https://f1-circuits. zurag.be). Built from this commit and run on an empty cache: /circuits, /circuits/<country> and a rendered Spa track are byte-identical to what ace serves today; the base URL comes from the variable, and without it falls back to the old address. Depends on mesh-controller #149.
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