REST API of aviation-model
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
apidoc
bin
spikes
src
test
.dockerignore
.editorconfig
.env
.eslintrc
.gitignore
.node-version
.travis.yml
Dockerfile
Makefile
apidoc.json
docker-compose.yml
package.json
readme.md

readme.md

aviation-api

Build Status

This is the REST API that powers http://aviation.cristobal.io (github repo.

It's built on top of aviation-model, and uses aviation data gathered from aviation-scrapper.

Check the API docs.

Usage

Pre-requisites

This API uses the data gathered by a scrapper, the data is then normalized and stored in JSON files before being migrated to a postgres database..

Make sure you check the migration module if you want to set this app on an existing postgres server.

Docker setup

All the dependencies for running the API as defined on this projects docker-compose.yml file.

To bring up a local instance of the API, you just need to run.

make dev

this will start dependencies on docker and the server locally using nodemon.

For continuous testing run:

make test-watch

To start the db, run and other dependencies run:

make docker-dependencies

Environment setup

Default environment variables will be taken from .env

Example

With the server started you can enter the following URL:

http://localhost:8081/airlines/?airline_id=American_Airlines

And will have the json object returned:

[
    {
        "airline_id":"American_Airlines",
        "name":"American Airlines, Inc.",
        "logo_url":"//upload.wikimedia.org/wikipedia/en/thumb/2/23/American_Airlines_logo_2013.svg/300px-American_Airlines_logo_2013.svg.png",
        "iata":"AA",
        "icao":"AAL",
        "callsign":"AMERICAN",
        "website":"http://www.aa.com"
    }
]

Testing

Run the command npm test or make test or if you want to use docker make test-docker or make test-docker-watch.

Contributions:

If you want to contribute, create your branch and place a PR or open an issue.