Complete project revamp with a bunch of commits See merge request ChaoticByte/drinks-manager!13 |
||
---|---|---|
app | ||
data | ||
misc | ||
project | ||
scripts | ||
.gitignore | ||
LICENSE | ||
manage.py | ||
README.md | ||
requirements.txt | ||
start.sh |
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