Some checks are pending
CI / validate (push) Waiting to run
Vier Review-Verbesserungen: - Suche real: /api/v1/search liefert echte unified Events+Orte (war Stub); Event-q trifft auch Venue-Namen; Startseite zeigt Orte-Treffer bei Suche. - Amenities/Öffnungszeiten/Region ausgespielt: Venue-Liste liefert openingHours/amenities/smoking/heroUrl, neuer amenity- + q-Filter; Orte-Seite mit Ausstattungs-/Region-Chips, „Jetzt geöffnet"-Badge (isOpenNow, über-Mitternacht-fest) + Amenity-Badges; Region-Chips auch auf der Startseite. - Folgen → Web Push (login-frei): kanal-agnostischer Kern (push_endpoints + venue_follows + notification_outbox, Migration 0005), Crawler-Auslöser (nur neue Events, best-effort), notification-worker (Drain + Ruhezeiten 22–8h + Pruning toter Endpoints), öffentliche /api/v1/push/*-Routen, Service Worker + lib/push.ts + Schalter auf /gemerkt (iOS-PWA-Hinweis). web-push-Lib (lädt unter Bun). Ohne VAPID-Keys bleibt Push schlafend (subscribe→503). Doku: docs/NOTIFICATIONS.md. Offen vor Push-Live: VAPID-Keys+SOPS, VVT-Eintrag. Tests: 112 API + 34 Web grün; api+web type-check grün; web build grün. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
60 lines
2.3 KiB
Text
60 lines
2.3 KiB
Text
# Seepuls — Lokale Entwicklungs-Konfiguration
|
|
# Kopiere nach .env und passe an.
|
|
|
|
# API-Server
|
|
PORT=3095
|
|
NODE_ENV=development
|
|
BASE_URL=http://localhost:3095
|
|
|
|
# Web (Astro, später)
|
|
WEB_PORT=3096
|
|
|
|
# Datenbank (lokales Postgres aus docker-compose, exposed auf 5441)
|
|
DATABASE_URL=postgresql://seepuls:devpassword@localhost:5441/seepuls
|
|
|
|
# Plattform-Services
|
|
MANA_AUTH_URL=http://localhost:3001
|
|
# JWKS-Endpoint von mana-auth (NICHT /.well-known/jwks.json — siehe
|
|
# mana-auth/src/middleware/jwt-auth.ts)
|
|
MANA_AUTH_JWKS_URL=http://localhost:3001/api/auth/jwks
|
|
MANA_SHARE_URL=http://localhost:3072
|
|
MANA_LINKS_URL=http://localhost:3073
|
|
MANA_EVENTS_URL=http://localhost:3074
|
|
MANA_MCP_URL=http://localhost:3069
|
|
MANA_CREDITS_URL=http://localhost:3061
|
|
MANA_NOTIFY_URL=http://localhost:3066
|
|
MANA_RESEARCH_URL=http://localhost:3068
|
|
MANA_GEOCODING_URL=http://localhost:3075
|
|
MANA_MEDIA_URL=http://localhost:3065
|
|
# mana-llm: PORTS.md sagt 3062, mana-llm/CLAUDE.md sagt 3025 — Drift,
|
|
# wir folgen der Service-CLAUDE.md (kann bei prod auf llm.mana.how
|
|
# überschrieben werden).
|
|
MANA_LLM_URL=http://localhost:3025
|
|
|
|
# Service-Identität — wird beim ersten Deploy von mana-auth generiert
|
|
# (POST /api/v1/admin/apps/seepuls/service-keys)
|
|
MANA_SERVICE_KEY=msk_test_replace-after-onboarding
|
|
|
|
# Crawler-User-Agent (Pflicht laut AGGREGATOR_POLICY.md §1)
|
|
SEEPULS_CRAWL_USER_AGENT=seepuls/0.0.1 (+https://seepuls.com; kontakt@mana.how)
|
|
SEEPULS_CRAWL_INTERVAL_MS=1100
|
|
|
|
# CORS — wer darf direkt auf das API zugreifen
|
|
CORS_ORIGINS=https://seepuls.com,http://localhost:3096
|
|
|
|
# ── Web Push (Folgen → Benachrichtigung) ──────────────────────────────
|
|
# VAPID-Schlüsselpaar erzeugen: `npx web-push generate-vapid-keys`.
|
|
# Privaten Key in SOPS/age ablegen. Ohne Keys bleibt Push schlicht aus
|
|
# (Worker idle, /push/subscribe → 503), der Rest läuft normal.
|
|
SEEPULS_VAPID_PUBLIC_KEY=
|
|
SEEPULS_VAPID_PRIVATE_KEY=
|
|
SEEPULS_VAPID_SUBJECT=mailto:kontakt@mana.how
|
|
# SEEPULS_NOTIFICATIONS=off # Zustell-Worker komplett aus
|
|
# SEEPULS_NOTIFY_TICK_MS=20000 # Drain-Intervall (Default 20s)
|
|
|
|
# Öffentliche API-Basis, die das Web im Browser anspricht (Web-Push-
|
|
# Subscribe + iCal-Feed). Muss von der Web-App gesehen werden.
|
|
SEEPULS_PUBLIC_API_URL=https://api.seepuls.com
|
|
|
|
# Verdaccio — für pnpm install gegen pkg.mana.how
|
|
NPM_AUTH_TOKEN=
|