Skip to content

davidak/satzgenerator.de

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

satzgenerator.de

Der Quelltext von https://satzgenerator.de/.

Es ist in Python programmiert, benutzt das Bottle Webframework, den Gunicorn WSGI HTTP-Server, den Datenbank ORM SQLAlchemy mit PyMySQL MySQL-Client sowie PyZufall zum generieren der zufälligen Sätze. Das Frontend ist mit Bootstrap und jQuery gebaut.

Generell wird auch SQLite unterstützt, z.B. für Testzwecke. Aktuell funktioniert es nicht. #2

Deployment

pip install -r requirements.txt
cp config.ini.dist config.ini
vim config.ini
gunicorn -w 2 --bind='0.0.0.0:8081' satzgenerator:app

Cronjob einrichten

Ein Cronjob löscht jede Nacht Sätze aus der Datenbank, die weder bewertet noch geteilt wurden.

crontab -e
20 4 * * * cd code/satzgenerator.de/; /usr/bin/python -c 'from satzgenerator import cron; cron()'

Entwicklung

Eine Entwicklungsumgebung, die alle Abhängigkeiten enthält, kann mit Nix erstellt werden.

Es kann der integrierte Webserver gestartet werden, um lokal zu entwickeln.

$ nix-shell -p python35Packages.{bottle,gunicorn,sqlalchemy,pymysql,pyzufall} sqlite
$ python satzgenerator/__init__.py
Bottle v0.12.11 server starting up (using WSGIRefServer())...
Listening on http://127.0.0.1:8081/
Hit Ctrl-C to quit.

Bei Änderungen am Code wird er automatisch neu gestartet.

Getestet wurde es mit Python 3.5.