2017-10-23 23:13:53 +02:00
# db-rest
2020-04-30 15:05:18 +02:00
**A clean REST API wrapping around the [Deutsche Bahn HAFAS API ](https://github.com/public-transport/db-hafas#db-hafas ).** It is deployed at [`v5.db.transport.rest` ](https://v5.db.transport.rest/ ).
2017-12-16 11:47:03 +01:00
2020-10-04 13:46:14 +02:00
[**API Documentation** ](docs/index.md )
2017-10-23 23:13:53 +02:00
2019-03-27 12:20:39 +01:00
![db-rest architecture diagram ](architecture.svg )
2018-01-09 00:06:53 +01:00
2020-10-04 13:46:14 +02:00
[![API status ](https://badgen.net/uptime-robot/status/m784879516-8a977fa91b975fc3884a9857 )](https://stats.uptimerobot.com/57wNLs39M/784879516)
2017-10-23 23:13:53 +02:00
[![dependency status ](https://img.shields.io/david/derhuerst/db-rest.svg )](https://david-dm.org/derhuerst/db-rest)
![ISC-licensed ](https://img.shields.io/github/license/derhuerst/db-rest.svg )
2021-02-04 19:25:04 +01:00
[![support me via GitHub Sponsors ](https://img.shields.io/badge/support%20me-donate-fa7664.svg )](https://github.com/sponsors/derhuerst)
[![chat with me on Twitter ](https://img.shields.io/badge/chat%20with%20me-on%20Twitter-1da1f2.svg )](https://twitter.com/derhuerst)
2017-10-23 23:13:53 +02:00
2019-06-11 13:56:21 +02:00
## installing & running
2017-10-23 23:13:53 +02:00
2020-05-01 20:15:27 +02:00
`bvg-rest` expects a [Redis ](https://redis.io/ ) server running on `127.0.0.1:6379` (default port), but you can set the `REDIS_URL` environment variable to change this.
2019-06-11 13:56:21 +02:00
### via Docker
2020-04-30 15:05:18 +02:00
A Docker image [is available as `derhuerst/db-rest:5` ](https://hub.docker.com/r/derhuerst/db-rest:5 ).
2019-06-11 13:56:21 +02:00
```shell
2020-04-30 15:05:18 +02:00
docker run -d -p 3000:3000 derhuerst/db-rest:5
2017-10-23 23:13:53 +02:00
```
2019-06-11 13:56:21 +02:00
2020-05-01 20:15:27 +02:00
*Note:* The Docker image does not contain the Redis server.
2019-06-11 13:56:21 +02:00
### manually
```shell
2017-10-23 23:13:53 +02:00
git clone https://github.com/derhuerst/db-rest.git
cd db-rest
2020-04-30 15:05:18 +02:00
git checkout 5
2017-10-23 23:13:53 +02:00
npm install --production
2020-05-01 20:15:27 +02:00
redis-server &
2017-10-23 23:13:53 +02:00
npm start
```
2019-08-07 23:21:01 +02:00
To keep the API running permanently, use tools like [`forever` ](https://github.com/foreverjs/forever#forever ) or [`systemd` ](https://wiki.debian.org/systemd ).
2018-10-25 21:19:19 +02:00
2017-10-23 23:13:53 +02:00
2020-05-01 18:51:03 +02:00
## Related Projects
- [`vbb-rest` ](https://github.com/derhuerst/vbb-rest ) – A clean REST API wrapping around the VBB API.
- [`bvg-rest` ](https://github.com/derhuerst/bvg-rest ) – A clean REST API wrapping around the BVG API.
- [`hvv-rest` ](https://github.com/derhuerst/hvv-rest ) – A clean REST API wrapping around the HVV API.
- [`hafas-rest-api` ](https://github.com/public-transport/hafas-rest-api ) – Expose a HAFAS client via an HTTP REST API.
- [`hafas-client` ](https://github.com/public-transport/hafas-client ) – JavaScript client for HAFAS public transport APIs.
2017-10-23 23:13:53 +02:00
## Contributing
If you **have a question** , **found a bug** or want to **propose a feature** , have a look at [the issues page ](https://github.com/derhuerst/db-rest/issues ).