Skip to main content

Professional product for AI-powered cycling and mountain bike route discovery, terrain analysis, and GPX generation.

Project description

BikeScout - AI for tactical cycling intelligence

License: AGPL v3 Version Python PRs Welcome

BikeScout is a specialized AI engine for MTB, Road, E-Bike, and Gravel mission planning. It transforms raw map data into Tactical Intelligence, predicting terrain conditions and trail hazards. The system provides precise setup advice, tailoring your equipment to the demands of the specific route, identifying technical challenges and environmental risks before you even leave the garage.

logo-medium


Quickstart

How to use BikeScout

📸 Click to watch BikeScout GUI

gui

🎥 Click to watch a Demo



Explore BikeScout

  • User Guide Detailed API references and step-by-step guides to deploy the BikeScout.

  • Website Explore the visual breakdown of Mud Logic, S-Scale terrain grading, and how we transform raw OSM data into mission-ready intel. Check the latest race analysis reports from the legendary routes.

Love BikeScout? ⭐ Star this repo to support the development of the first open-source tactical cycling engine.

Found a bug? Open an Issue. Want to add a local skill? PRs are welcome!


Example Queries

You can ask BikeScout complex, multi-step requests. It combines real-time data with technical cycling intelligence to provide expert-level answers.

🗺️ Advanced Planning (Multi-Tool)

  • "I'm at Monte Cavo with my MTB bike (29 tires). Plan a 25km loop for me. Check if the terrain is compatible with my bike, verify the afternoon rain probability, and suggest a 'Fraschetta' for the finish. Use the Castelli Romani guide."

⚙️ Bike Setup & Surface Intelligence

  • "Check this route from Barcelona city center to El Prat. I'm on a Road Bike with 25mm tires. Is it compatible? Give me the exact percentage of gravel vs asphalt."

📈 Visual Elevation & Gradient Analysis

  • "Plan a 40km route starting from Bormio. I need the Visual Elevation Profile to see the exact gradients of the Stelvio climb. Highlight sections over 12% so I can manage my pacing."

🏔️ Local Expertise

  • "Use the Derby local guide to plan a road cycling route starting from Derby. I need at least 800m of elevation gain. Also, recommend the correct tire pressure for high-altitude descents."

🛠️ Quick Tech Checks

  • "Give me the safety checklist and calculate the tire pressure for a 90kg rider on 2.3" tubeless tires for a muddy ride."

🏁 Post-Ride Analysis & Terrain Truth

  • "Analyze my ride from 2026-04-12. Compare my average speed with the Mud Risk at that time and tell me if the terrain conditions were the reason for my slow pace."

🤝 Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make to BikeScout are greatly appreciated.

How to Contribute

  1. Report Bugs: Found a glitch? Open an Issue with a detailed description and steps to reproduce.
  2. Feature Requests: Have an idea to make BikeScout better? Open an issue to discuss it!
  3. Pull Requests:
    • Fork the Project.
    • Create your Feature Branch (git checkout -b feature/AmazingFeature).
    • Commit your changes (git commit -m 'Add some AmazingFeature').
    • Push to the Branch (git checkout origin feature/AmazingFeature).
    • Open a Pull Request.

Coding Standards

  • Please follow PEP 8 for Python code.
  • Ensure all new tools are documented in the README.md.
  • Keep comments in English for international collaboration.

By contributing, you agree that your contributions will be licensed under the project's AGPLv3 License.


License & Data Attributions

Software License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the LICENSE file for details.

Why AGPLv3?

BikeScout contains proprietary-grade tactical logic (such as the TAEL® Mud Reservoir Model). The AGPLv3 ensures that:

  • Transparency: Any modified version of BikeScout used to provide a service over a network (SaaS/Cloud) must make its full source code available to the community.
  • Integrity: The core tactical intelligence remains open and collaborative, preventing "closed-source" commercial hijacking of the platform's unique algorithms.

Data Sources & Credits

BikeScout aggregates data from several open providers. Users of this server must adhere to their respective terms:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bikescout-1.4.2.tar.gz (4.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bikescout-1.4.2-py3-none-any.whl (114.7 kB view details)

Uploaded Python 3

File details

Details for the file bikescout-1.4.2.tar.gz.

File metadata

  • Download URL: bikescout-1.4.2.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for bikescout-1.4.2.tar.gz
Algorithm Hash digest
SHA256 d455a4307e945965514a4f6fc1c04bafc79aeaa6ba3be6e028bd57aeb6eb9097
MD5 4105b29cd04965fbb897bd8efd98f163
BLAKE2b-256 01195d23cbb570ab721f764088c776dee7f81d8b18059a3b00a680897bcb7b2d

See more details on using hashes here.

File details

Details for the file bikescout-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: bikescout-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 114.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for bikescout-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a5d31df56cb0015af13105e7542c154b8d3c06347b28837e09e20fcc9a19938c
MD5 91cc1d01e8e24f050255a4aa665edf4c
BLAKE2b-256 8903b3739dbc51557f6a2c0ac776203a8c9d3c766ebf1a15204a0f644fcd611f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page