Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


I'm not sure if somebody will want to create a fork or participate in development of this project, but at least we save a few comments for myself: how to bootstrap this application. Nothing to tough, but still good to know.

Step by step project setup

  1. Check if you have python 3.8+ (check deadsnakes if not:
python -V
  1. Install nvm:
curl -o- | bash
  1. Install latest node
nvm install node
  1. Install node modules
npm install
  1. Install poetry:
curl -sSL | python -
  1. Setup poetry to use local virtual environment
poetry config true
  1. Create virtualenv and install project dependencies
poetry install
  1. Create development SSL certificates (install make if don't have it, like sudo apt install make)
make devssl
  1. Create a secrets file (see further instructions in the example comments):
cp secrets.example secrets
vi secrets
  1. Initialize database (make sure, that you have working docker:
poetry run docker-compose up database
  1. Apply database migrations (or restore a dump if you have one)
poetry run flask db upgrade
# or if dump
cat dump.sql | poetry run docker-compose exec -T database mysql -p<root-password> rembish_org
  1. Check if you have the right localhost alias:
sudo vi /etc/hosts
# Add to

Starting dev environment

  1. Using flask WSGI server:
env $(cat secrets | xargs) poetry run flask run
# Server will be spawned on
  1. Using docker:
poetry run docker-compose up
# Server will be started on standard HTTPS port:

Contributing and deploying

  1. Don't forget to add your changes to
  2. To deploy new version:
    • increase version: poetry run flask version -i [patch|minor|major]
    • commit changes: git commit -a -m "Release X.Y.Z
    • tag 'em: git tag vX.Y.Z
    • and push: git push --tags origin main
  3. Github Actions will deploy the application automatically
  4. Check it on