eventcally/README.md
2020-12-22 15:09:13 +01:00

2.1 KiB

Goslar Event Prototype

Build Status Coverage Status Code style: black Updates

Website prototype using Python, Flask and Postgres.

Automatic Deployment

Deploy

Manual Installation

Requirements

  • Python 3.7
  • pip
  • Postgres with postgis

Create database

psql -c 'create database gsevpt;' -U postgres

Install and run

export DATABASE_URL="postgresql://postgres@localhost/gsevpt"
pip install -r requirements.txt
flask db upgrade
gunicorn --bind 0.0.0.0:5000 project:app

Scheduled/Cron jobs

Jobs that should run on a regular basis.

Daily

flask event update-recurring-dates

Administration

flask user add-admin-roles super@hero.com

Configuration

Create .env file in the root directory or pass as environment variables.

Security

Variable Function
SECRET_KEY A secret key for verifying the integrity of signed cookies. Generate a nice key using secrets.token_urlsafe().
SECURITY_PASSWORD_HASH Bcrypt is set as default SECURITY_PASSWORD_HASH, which requires a salt. Generate a good salt using: secrets.SystemRandom().getrandbits(128).

Send notifications via Mail

Variable Function
MAIL_DEFAULT_SENDER see https://pythonhosted.org/Flask-Mail/
MAIL_PASSWORD "
MAIL_PORT "
MAIL_SERVER "
MAIL_USERNAME "

Resolve addresses with Google Maps

Variable Function
GOOGLE_MAPS_API_KEY API Key with Places API enabled

Development

Development