The Heutagogy backend is a core of the Heutagogy project.
- python3
- postgresql
- redis
Install all necessary build requirements.
pip3 install -r requirements.txt
Configure environment variables.
export FLASK_APP=heutagogy
This tells Flask which application to use.
Using Nix
Use the following command to install all necessary dependencies and set environment variables.
nix-shell
Heutagogy requires Postgresql (for storing user data) and Redis (for work queue) databases to function properly.
The postgresql database configuration is passed via DATABASE_URL
environment variable, which defaults to postgresql:///heutagogy
(that is, postgersql database on localhost, database name heutagogy
).
Redis database configuration is passed via REDIS_URL
environment variable and defaults to redis://localhost:6379
.
Before starting the server, you need to create/upgrade the database/schema. This should be done with the following command.
flask db upgrade
./run.py
flask run
Navigate to http://127.0.0.1:5000/user/register to register your user.
After you have your server running, use the frontend or the google chrome extension to communicate with the server.
We follow the C4.2 process for working with Heutagogy, which means that every change is tracked as an issue. You can either:
- Define an issue for a problem and then propose your own patch, or wait for someone else to fix it, or
- Come immediately with a patch, and submit that as a pull request, without a separate issue.
An ideal description for an issue goes:
Problem: (describe the problem here)
Solution: (describe your solution here)
The heutagogy-backend source code is licensed by GNU Affero General Public License version 3 (APGLv3).
The full text of the Heutagogy license is available in LICENSE file.