Azimuth is a playground for experiments in cartography at Artsy.
It consists of:
- a Rails 5 backend, built with Kinetic so that it can talk to Gravity, and can be extended with custom server-side functionality
- Leaflet, a full-featured client-side library for building interactive web maps
- A few lightweight patterns so you can quickly get hacking
The goal here is to optimize for ease and speed of iteration and for FUN. Contributions are welcomed.
- State: experimental
- GitHub: https://github.com/artsy/azimuth/
- Point people: @anandaroop
-
Fork this repo, and clone your copy to your local machine
-
Find or create your
ClientApplication
and access credentials in a Gravity rails console.
- Make sure the
ClientApplication
includes"http://localhost:9000"
in itsredirect_urls
. (If you are using a different port, you can set it in the.env
file, below)
- Copy
.env.example
to.env
and update with your desired ENV variables
- Defaults to a Gravity installation running on localhost but you can easily point to the staging API
artsy_url=https://staging.artsy.net
gravity_url=https://stagingapi.artsy.net
# etc
- You can change the default port number, e.g.
PORT=9001
- Set up and bundle the app
$ cd azimuth
$ bundle install
If the bundle step fails when trying to fetch private Artsy gems, you may need to:
-
Create a personal access token for command line use
-
Run
bundle config
with your new token -
Start the server
$ bundle exec foreman start
Once you're up and running, here is a step-by-step guide to contributing a new map.
Have fun!