The backend app of Project Amber, a task list app
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
Timur Demin b671c0ea59
Merge branch 'develop'
před 2 týdny
bin Add an example docker-compose config před 3 měsíci
doc Add an example docker-compose config před 3 měsíci
project_amber Bypass auth middleware for CORS checks před 2 týdny
.dockerignore Make the app run with Docker před 3 měsíci
.drone.yml Update CI config před 1 měsícem
.gitignore Remove SQLite databases from Git před 3 měsíci
.pylintrc Make pylint aware that db.session is autogenerated před 3 měsíci
Dockerfile Add an example docker-compose config před 3 měsíci
LICENSE.txt Initial commit před 3 měsíci
README.md Update README před 2 týdny
docker-compose.yml Add an example docker-compose config před 3 měsíci
requirements.txt Add CORS support před 2 týdny
setup.cfg Initial commit před 3 měsíci
setup.py Add CORS support před 2 týdny

README.md

Amber Backend

This is the backend app of Project Amber, a task list app.

This is a basic Flask/SQLAlchemy app that takes care of syncing tasks between devices.

Configuration

The config file is a JSON file that is loaded from either ./config.json or /etc/amber.json, whichever is found first.

Example config:

{
    "database": "sqlite:///file.db", // SQLAlchemy database URI
    // see https://docs.sqlalchemy.org/en/13/core/engines.html#database-urls
    "allow_signup": false, // whether to allow /api/signup or not
    "loglevel": 0, // 0: errors, 1: warnings, 2: info
    "domain": "https://your.domain.tld" // full domain with HTTPS
    // needed for CORS
}

If there are environment variables AMBER_DATABASE / AMBER_ALLOW_SIGNUP / AMBER_LOGLEVEL, AMBER_DOMAIN set, the program will respect them and use over the values provided with the config file.

Dependencies

This app directly depends on flask, flask-sqlalchemy, flask-cors, and bcrypt.

Running in Docker

The Dockerfile included with the project assumes that:

  1. You’re going to use either PostgreSQL or SQLite.
  2. You’re going to run it behind a reverse proxy such as nginx (and running the app without a reverse proxy won’t work because of the current uwsgi configuration).

If you have to/prefer to use MariaDB, etc, you’ll have to add the necessary Python packages to the Docker image by hand.

Licenses

See LICENSE.txt.