Find a file
2023-03-26 11:09:30 +00:00
app Fixed an issue with the 0002_setup migration that caused the upgrade from version 14 to fail 2023-03-26 12:26:43 +02:00
data Added support for multiple hosts in caddy configuration and CSRF_TRUSTED_ORIGINS #22 2023-02-12 10:59:22 +01:00
misc Changed all W13R references to ChaoticByte #18 2023-02-12 19:30:46 +01:00
project Added support for multiple hosts in caddy configuration and CSRF_TRUSTED_ORIGINS #22 2023-02-12 10:59:22 +01:00
scripts Redesigned the user interface #23 2023-02-17 22:01:09 +01:00
.gitignore Updated .gitignore and restored misc folder with updated systemd unit file and icons 2023-02-11 23:34:00 +01:00
LICENSE Changed all W13R references to ChaoticByte #18 2023-02-12 19:30:46 +01:00
manage.py Added session-autocleaner, changed some script filenames, changed shebang of manage.py #16 2023-02-11 21:22:52 +01:00
README.md Updated README (about gettext dependency) 2023-02-17 22:08:44 +01:00
requirements.txt Completely re-structured the project from scratch, wrote a better bootstrap script, changed configuration format to yaml, improved Caddyfile, and more. #15 #16 #20 2023-02-11 17:23:57 +01:00
start.sh Bumped version to 15 #24 2023-03-26 12:43:01 +02:00

Drinks Manager (Season 3)

Note: This software is tailored to my own needs. I probably won't accept feature requests, and don't recommend you to use this software if this isn't exactly what you are looking for.

Can't keep track of the number of drinks your guests drink? Now you have a web interface that really tries to make things less complicated- for you and your guests.

This (exaggeration intended) most incredible piece of software is written in Python, HTML, CSS, JS, Bash and uses Django and PostgreSQL.
You have to bring your own PostgreSQL Database though.

Getting started

System Requirements

Beneath a PostgreSQL DBMS, you need the following things:

  • pg_config (Ubuntu: libpq-dev, RHEL: libpq-devel)
  • Caddy 2.4.3+ (HTTP Reverse Proxy & Static File Server)
  • gcc
  • gettext (for development only)
  • Python 3.9+
    • venv
    • pip
  • Python header files (RHEL: python3-devel, Ubuntu: python3-dev)

Database

This project is using PostgreSQL. After creating a user and database for this application, make shure to

revoke all on schema public from PUBLIC;

and revoke/grant other privileges accordingly to secure the database against public access.

Configuration

Create the configuration file by copying ./data/config.example.yml to ./data/config.yml, and modify it for your needs.

Create Environment & Install dependencies

Run the following from the main directory:

./scripts/setup-env.sh

Create admin account

./scripts/create-admin.sh

This also runs all necessary migrations.

Activate venv

On every new session, before running commands with manage.py, running special scripts, or developing, you have to activate the virtual environment:

source ./venv/bin/activate

If you see (venv) before your command prompt, it worked!

Usage

To start the Application and Webserver, run

./start.sh

or

./start.sh --devel