From ea67e6c1b085f476fc28091deef41e5b761a671b Mon Sep 17 00:00:00 2001 From: Scarriffle Date: Wed, 22 Jul 2026 09:24:54 +0200 Subject: [PATCH] Umbenennung Pantry -> Project-Good; README mit echter Clone-URL - Anzeigename, Paketname, Token-Key, DB-/Volume-Namen auf project_good - README Clone-Abschnitt mit git.scarriffle.com/Scarriffle/project-good Co-Authored-By: Claude Opus 4.8 --- README.md | 11 +++++++---- backend/app/config.py | 2 +- backend/app/main.py | 2 +- backend/app/off.py | 2 +- deploy/.env.example | 6 +++--- deploy/docker-compose.yml | 14 +++++++------- deploy/install.sh | 8 ++++---- docs/ROADMAP.md | 2 +- web/index.html | 2 +- web/package.json | 2 +- web/src/App.jsx | 2 +- web/src/api.js | 2 +- web/src/pages/Login.jsx | 2 +- 13 files changed, 30 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 71301de..980fb37 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# 🥫 Pantry – Selfhostbare Lebensmittel-Lagerverwaltung +# 🥫 Project-Good – Selfhostbare Lebensmittel-Lagerverwaltung Ein selbst gehosteter Dienst zur Verwaltung deines Lebensmittelvorrats: Ein-/Auslagern per Barcode, MHD-/Ablaufverwaltung mit Chargen, Mindestbestände, @@ -44,14 +44,17 @@ Voraussetzung: eine Linux-Maschine (Server, NAS, Raspberry Pi …). Docker wird Bedarf automatisch installiert. ```bash -git clone pantry -cd pantry/deploy +git clone https://git.scarriffle.com/Scarriffle/project-good.git +cd project-good/deploy chmod +x install.sh ./install.sh # interaktiv – fragt Port & Admin-Passwort # oder vollautomatisch mit generiertem Admin-Passwort: # ./install.sh --yes ``` +> Ist das Gitea-Repo privat, fragt `git clone` nach Benutzername + Access-Token. +> Falls `git` fehlt: `apt update && apt install -y git`. + Nach dem Start: - Web-UI: `http://:8080` (Port konfigurierbar) - Anmeldung mit dem im Installer angezeigten Admin-Benutzer/Passwort. @@ -74,7 +77,7 @@ cd backend python -m venv .venv && source .venv/bin/activate pip install -r requirements.txt # lokale SQLite-DB nutzen: -export DATABASE_URL="sqlite:///./pantry.db" +export DATABASE_URL="sqlite:///./project_good.db" uvicorn app.main:app --reload ``` API-Doku dann unter `http://localhost:8000/docs`. diff --git a/backend/app/config.py b/backend/app/config.py index c88afac..f2b6b15 100644 --- a/backend/app/config.py +++ b/backend/app/config.py @@ -7,7 +7,7 @@ class Settings(BaseSettings): model_config = SettingsConfigDict(env_file=".env", extra="ignore") # Database - database_url: str = "postgresql+psycopg2://pantry:pantry@localhost:5432/pantry" + database_url: str = "postgresql+psycopg2://project_good:project_good@localhost:5432/project_good" # Auth / JWT jwt_secret: str = "change-me-in-production" diff --git a/backend/app/main.py b/backend/app/main.py index c1cc88c..3ea99fb 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -32,7 +32,7 @@ async def lifespan(app: FastAPI): yield -app = FastAPI(title="Pantry – Lebensmittel-Lagerverwaltung", version="1.0.0", lifespan=lifespan) +app = FastAPI(title="Project-Good – Lebensmittel-Lagerverwaltung", version="1.0.0", lifespan=lifespan) origins = ["*"] if settings.cors_origins.strip() == "*" else [ o.strip() for o in settings.cors_origins.split(",") if o.strip() diff --git a/backend/app/off.py b/backend/app/off.py index 11dc439..837c471 100644 --- a/backend/app/off.py +++ b/backend/app/off.py @@ -33,7 +33,7 @@ def lookup_barcode(barcode: str) -> dict | None: resp = httpx.get( url, timeout=settings.off_timeout_seconds, - headers={"User-Agent": "Pantry-Selfhosted/1.0 (github: pantry)"}, + headers={"User-Agent": "Project-Good-Selfhosted/1.0"}, ) except httpx.HTTPError: return None diff --git a/deploy/.env.example b/deploy/.env.example index 7ea7124..43dcdf5 100644 --- a/deploy/.env.example +++ b/deploy/.env.example @@ -5,9 +5,9 @@ WEB_PORT=8080 # Datenbank -POSTGRES_USER=pantry -POSTGRES_PASSWORD=pantry -POSTGRES_DB=pantry +POSTGRES_USER=project_good +POSTGRES_PASSWORD=project_good +POSTGRES_DB=project_good # Sicherheit – im Betrieb unbedingt ändern! JWT_SECRET=change-me-please diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml index b7009f3..25e4427 100644 --- a/deploy/docker-compose.yml +++ b/deploy/docker-compose.yml @@ -3,13 +3,13 @@ services: image: postgres:16-alpine restart: unless-stopped environment: - POSTGRES_USER: ${POSTGRES_USER:-pantry} - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-pantry} - POSTGRES_DB: ${POSTGRES_DB:-pantry} + POSTGRES_USER: ${POSTGRES_USER:-project_good} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-project_good} + POSTGRES_DB: ${POSTGRES_DB:-project_good} volumes: - - pantry_db:/var/lib/postgresql/data + - project_good_db:/var/lib/postgresql/data healthcheck: - test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-pantry}"] + test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-project_good}"] interval: 5s timeout: 5s retries: 10 @@ -21,7 +21,7 @@ services: db: condition: service_healthy environment: - DATABASE_URL: postgresql+psycopg2://${POSTGRES_USER:-pantry}:${POSTGRES_PASSWORD:-pantry}@db:5432/${POSTGRES_DB:-pantry} + DATABASE_URL: postgresql+psycopg2://${POSTGRES_USER:-project_good}:${POSTGRES_PASSWORD:-project_good}@db:5432/${POSTGRES_DB:-project_good} JWT_SECRET: ${JWT_SECRET:-change-me} ADMIN_USERNAME: ${ADMIN_USERNAME:-admin} ADMIN_PASSWORD: ${ADMIN_PASSWORD:-changeme} @@ -38,4 +38,4 @@ services: - "${WEB_PORT:-8080}:80" volumes: - pantry_db: + project_good_db: diff --git a/deploy/install.sh b/deploy/install.sh index 5f6bdc2..a7ae468 100644 --- a/deploy/install.sh +++ b/deploy/install.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Pantry – Installer für selfhostbare Lebensmittel-Lagerverwaltung. +# Project-Good – Installer für selfhostbare Lebensmittel-Lagerverwaltung. # Installiert bei Bedarf Docker und startet den kompletten Stack via Docker Compose. # # Nutzung: @@ -84,9 +84,9 @@ create_env() { cat > "$ENV_FILE" < - Pantry – Lagerverwaltung + Project-Good – Lagerverwaltung
diff --git a/web/package.json b/web/package.json index 77324f3..df962b5 100644 --- a/web/package.json +++ b/web/package.json @@ -1,5 +1,5 @@ { - "name": "pantry-web", + "name": "project-good-web", "private": true, "version": "1.0.0", "type": "module", diff --git a/web/src/App.jsx b/web/src/App.jsx index 1cf0586..e52c0c5 100644 --- a/web/src/App.jsx +++ b/web/src/App.jsx @@ -24,7 +24,7 @@ function Layout({ children }) { return (
-
🥫 Pantry
+
🥫 Project-Good