src | ||
.gitignore | ||
Cargo.toml | ||
README.md |
Graph Databases Homework 3
A simple route planning between cities with routes was implemented in Rust.
Run yourself
The project has a minimum supported Rust version (MSRV) of 1.63.0.
The Neo4j database has to be started manually and run in background. To start the project run:
cargo run --package graphdbhue3 --bin graphdbhue3
You can use the CLI interface to select the proper db credentials:
❯ ./graphdbhue3 --help
Simple Route planning application
Usage: graphdbhue3 [OPTIONS]
Options:
--host <HOST> host of db [default: 127.0.0.1]
--port <PORT> port of db [default: 7687]
--username <USERNAME> username of db [default: ]
--password <PASSWORD> password of db [default: ]
-h, --help Print help
-V, --version Print version
Appending cli parameters to the above cargo run
command is as simple as:
cargo run --package graphdbhue3 --bin graphdbhue3 -- --username <yourusername> --password <yourpwd>
Accessing Web Interface
The API is exposed on Port 8081
.
Access it through the Swagger Web UI: http://localhost:8081/docs
Usage
Adding cities and routes
With the /addcity
and /addroute
endpoints you can add cities and link them together through routes.
Requesting shortest path
Afterwards you can plan a route from one city to another with /shortestpath
.
This returns the shortest path between the two cities respecting the distance
parameter of the ROAD edge.