Nouri

Nouri ist eine kleine private Flask-App für einen Haushalt, um Essensideen, Einkäufe, vorhandene Lebensmittel und eine einfache Tages- oder Wochenplanung ruhig und alltagsnah festzuhalten.

Merkmale in Version 0.2

  • Lebensmittel und Mahlzeitenideen anlegen
  • Fotos lokal hochladen
  • Einkaufsliste mit Abhaken
  • „Zuhause“ als sichtbarer Vorrat mit Tageszeit-Filtern
  • Archiv mit Suche und schneller Wiederaufnahme
  • Tagesplan mit schnellen Vorschlägen je Tageszeit
  • Wochenansicht für die nächsten 7 Tage
  • einfache Suche und Filter für Lebensmittel und Mahlzeitenideen
  • einfache Benutzeranmeldung für einen Haushalt

Lokal starten

python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
flask --app wsgi run --debug

Dann http://127.0.0.1:5000 öffnen und beim ersten Start einen ersten Haushalt-Benutzer unter /auth/setup anlegen.

Konfiguration

Die App legt Daten standardmäßig unter ./data ab.

Wichtige Umgebungsvariablen:

  • NOURI_SECRET_KEY: Session-Secret für Produktion
  • NOURI_DATA_DIR: Pfad für Datenbank und Uploads, z. B. /app/data auf Cloudron
  • NOURI_MAX_UPLOAD_MB: maximales Upload-Limit in MB, Standard 5

Migration von 0.1 auf 0.2

Beim Start führt Nouri das Schema erneut mit CREATE ... IF NOT EXISTS aus und gleicht die festen Tageszeiten ab. Vorhandene Daten bleiben erhalten; neue Indizes und aktualisierte Tageszeit-Namen werden automatisch ergänzt.

Cloudron-Hinweis

Für Cloudron ist die App jetzt so vorbereitet, dass Datenbank und Uploads unter /app/data liegen. Das Startskript setzt NOURI_DATA_DIR=/app/data, legt die SQLite-Datei dort an und startet die App per gunicorn.

Lokale Testdaten und produktive Cloudron-Daten bleiben bewusst getrennt:

  • lokal nutzt Nouri ohne gesetzte Variable standardmäßig ./data
  • auf Cloudron nutzt Nouri /app/data
  • data/ ist in .gitignore und .dockerignore ausgeschlossen und wird weder eingecheckt noch ins Image kopiert
  • /app/data ist auf Cloudron persistent und bleibt bei App-Updates erhalten

Wenn die App auf Cloudron bereits installiert ist, bitte kein neues cloudron install ausführen. Stattdessen die bestehende App aktualisieren, also ein neues Image bzw. Paket bauen und dann die vorhandene Installation updaten.

S
Description
Eine App um Mahlzeiten zu planen.
Readme 1.8 MiB
Version 1.3.4 Latest
2026-05-01 12:48:18 +00:00
Languages
Python 50%
HTML 29.8%
CSS 14.2%
JavaScript 5.9%
Shell 0.1%