45 lines
1.7 KiB
Markdown
45 lines
1.7 KiB
Markdown
---
|
|
title: Developers
|
|
has_children: true
|
|
nav_order: 4
|
|
---
|
|
|
|
# Developer Information
|
|
|
|
## Profile Development
|
|
|
|
BRouter offers [freely configurable routing
|
|
profiles](../features/costfunctions.md). To extend existing profiles or develop
|
|
you own profile see [Profile Developers Guide](profile_developers_guide.md) for
|
|
a technical reference.
|
|
|
|
### (Optional) Generate profile variants
|
|
|
|
This repository holds examples of BRouter profiles for many different
|
|
transportation modes. Most of these can be easily customized by setting
|
|
variables in the first `global` context of the profiles files.
|
|
|
|
An helper script is available in `misc/scripts/generate_profile_variants.sh`
|
|
to help you quickly generate variants based on the default profiles, to create
|
|
a default set of profiles covering most of the basic use cases.
|
|
|
|
## Run the BRouter HTTP server
|
|
|
|
Helpers scripts are provided in `misc/scripts/standalone` to quickly spawn a
|
|
BRouter HTTP server for various platforms.
|
|
|
|
* Linux/Mac OS: `./misc/scripts/standalone/server.sh`
|
|
* Windows (using Bash): `./misc/scripts/standalone/server.sh`
|
|
* Windows (using CMD): `misc\scripts\standalone\server.cmd`
|
|
|
|
The API endpoints exposed by this HTTP server are documented in the
|
|
[`brouter-server/src/main/java/btools/server/request/ServerHandler.java`](brouter-server/src/main/java/btools/server/request/ServerHandler.java)
|
|
file.
|
|
|
|
## Android Service
|
|
|
|
BRouter exposes an [Android
|
|
Service](https://developer.android.com/guide/components/services) which can be
|
|
used by other applications to calculate routes. See
|
|
[`brouter-routing-app/src/main/aidl/btools/routingapp/IBRouterService.aidl`](brouter-routing-app/src/main/aidl/btools/routingapp/IBRouterService.aidl)
|
|
for the interface definition.
|