Skip to content

Infrastructure

matthewcornell edited this page Sep 16, 2020 · 1 revision

Here are Zoltar's major underlying components:

Sites

The zoltar "ecosystem" has these sites:

Software

  • Language: The app is written in Python, currently 3.6.
  • Web app: Zoltar runs on Django.
  • Data storage: We use Django's ORM to represent all project-oriented information (users, projects, models, forecasts, etc.) We also use it to store the forecast data itself, along with the corresponding scores.
  • REST API: We use Django REST framework.
  • Asynchronous message queue: We use RQ (Redis Queue), which is backed by Redis. This doc page describes the user-facing representation of asynchronous jobs.
  • Libraries: As listed in the Pipfile.

Zoltar user libraries

We've written two libraries to simplify using the API: zoltpy (Python) and zoltr (R).

Hosting

We are hosting web app all components on Heroku, including:

Documentation generation

Here are the auto-built documentation sites:

Zoltar developer wiki

Zoltar user documentation

zoltr user documentation

zoltpy user documentation

TBD, say via a Jupyter Notebook.