45 lines
2.7 KiB
Markdown
45 lines
2.7 KiB
Markdown
# OwlBoard
|
|
|
|
OwlBoard is both a backend API, and a frontend Arrival/Departure board webapp.
|
|
|
|
Powered by Node.JS and using the ldbs-json module, the OwlBoard API provides up to date train departure information for any station in the UK.
|
|
|
|
## Build
|
|
|
|
To build the application with Docker, clone the repository and run `docker build`
|
|
|
|
## API Endpoints:
|
|
|
|
API Documentation has been removed as it is now out of date. I do intent to re-write the documentation at a later date.
|
|
|
|
## Configuration:
|
|
|
|
Configuration options are set through environment variables.
|
|
These configuration options are shared with other programs in the OwlBoard ecosystem.
|
|
|
|
| VAR | DEFAULT | REQUIRED | PURPOSE |
|
|
| :-----------------: | :-------: | :------: | :-------------------------------------------------------: |
|
|
| OWL_SRV_PORT | 8460 | NO | Web Server Port |
|
|
| OWL_SRV_LISTEN | 0.0.0.0 | NO | Web Server Listen Address |
|
|
| OWL_DB_USER | owl | NO | Database Username |
|
|
| OWL_DB_PASS | twittwoo | NO | Database Password - Do not leave as default in production |
|
|
| OWL_DB_NAME | owlboard | NO | Database Name |
|
|
| OWL_DB_PORT | 27017 | NO | Database Server Port |
|
|
| OWL_DB_HOST | localhost | NO | Database Server Host |
|
|
| OWL_LDB_KEY | | YES | National Rail LDBWS API Key |
|
|
| OWL_LDB_SVKEY | | NO | National Rail LDBSVWS API Key |
|
|
| OWL_LDB_CORPUSUSER | | YES | Network Rail NROD Username |
|
|
| OWL_LDB_CORPUSPASS | | YES | Network Rail NROD Password |
|
|
| OWL_GIT_ISSUEBOT | | NO | Gitea API Key for issue reporting |
|
|
| OWL_GIT_APIENDPOINT | | NO | Gitea API Endpoint |
|
|
|
|
In the case that OWL_LDB_SVKEY is not available, staff versions of departure board, etc. will not be available.
|
|
|
|
In the case that OWL_GIT_ISSUEBOT is not available, the 'Report Issue' page will not be able to POST data.
|
|
|
|
## Database
|
|
|
|
OwlBoard uses MongoDB
|
|
|
|
The OwlBoard database is managed by the dbmanager application which will configure and maintain the database and should be run at least twice a day to ensure timetable data is up to date, see https://git.fjla.uk/owlboard/db-manager.
|