
blaise (/blɛz/) named after Blaise Pascal, a French mathematician and physicist who created the first public transit system in Paris in 1662 called the Carrosses à cinq sols.
blaise is an easy to use, fully local engine for public transit data with a strong focus on performance. It handles the heavy lifting of loading, searching, and routing through GTFS transit schedules so you can focus on building your application without relying on external APIs.
Designed to be a complete local solution, blaise supports:
- Fast routing: Efficient schedule based pathfinding using a optimized version of the RAPTOR algorithm.
- Fuzzy search: Easily find stops and areas even with partial or imperfect names.
- Geospatial search: Discover transit options based on geographic coordinates.
[!NOTE] This project is early in development, if you like the idea and want to help improve it, please open an issue.
Server
While blaise is a library, we provide a server for projects that cannot directly integrate with the Rust crate. The blaise server wraps this functionality in a ready to use REST API, supporting search, proximity queries, and routing out of the box.
Installation
Add blaise to your Cargo.toml:
Quick Start
use ;
use Repository;
use ;
use ;
Roadmap
- Production-ready web server crate with docker image
- Multi-threaded routing (Switching to RAPTOR)
- Real-time data updates (GTFS-RT)
- Advanced date and holiday filtering
Refrences
License
This project is licensed under the MIT License.