Skip to content

Latest commit

 

History

History
59 lines (39 loc) · 2.16 KB

DEVELOPMENT.md

File metadata and controls

59 lines (39 loc) · 2.16 KB

Development Guide for Athens

Both the registry and the proxy are written using the Buffalo framework. We chose this framework to make it as straightforward as possible to get your development environment up and running.

You'll need Buffalo v0.12.4 or later to get started on Athens, so be sure to download the CLI and put it into your PATH.

See our Contributing Guide for tips on how to submit a pull request when you are ready.

Initial Development Environment Setup

Athens relies on having a few tools installed locally. Run make setup-dev-env to install them.

Services that Athens Needs

Both the proxy and the registry rely on several services (i.e. databases, etc...) to function properly. We use Docker images to configure and run those services.

If you're not familiar with Docker, that's ok. In the spirit of Buffalo, we've tried to make it easy to get up and running:

  1. Download and install docker-compose (docker-compose is a tool for easily starting and stopping lots of services at once)
  2. Run make dev from the root of this repository

That's it! After the make dev command is done, everything will be up and running and you can move on to the next step.

If you want to stop everything at any time, run make dev-teardown.

Run the Proxy or the Registry

As you know from reading the README (if you didn't read the whole thing, that's ok. Just read the introduction), the Athens project is made up of two components:

  1. Package Registry
  2. Edge Proxy

To run the registry:

cd cmd/olympus
buffalo dev

To run the proxy:

cd cmd/proxy
buffalo dev

After either buffalo dev command, you'll see some console output like:

Starting application at 127.0.0.1:3000

And you'll be up and running. As you edit and save code, the buffalo dev command will notice and automatically re-compile and restart the server.