server/CLAUDE.md
vegard 53f0ccf49e Oppdater CLAUDE.md med serverinfo og produksjonsstatus
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 04:53:38 +01:00

2.5 KiB

Sidelinja - Claude Code Prosjektguide

Prosjektoversikt

Sidelinja er et redaksjonelt operativsystem og kunnskapsgraf for podcast-produksjon. Self-hosted på Hetzner VPS med full datakontroll.

Nøkkelfiler

  • ARCHITECTURE.md — Overordnet arkitektur, stack, datamodell og infrastruktur
  • docs/setup/produksjon.md — Steg-for-steg oppsett av Hetzner VPS fra scratch
  • docs/setup/lokal.md — Steg-for-steg oppsett av lokalt WSL2 utviklingsmiljø
  • docs/features/ — Detaljerte feature-spesifikasjoner:
    • kunnskapsgraf_og_relasjoner.md — Nodes & Edges-modell i PostgreSQL
    • ai_research_klipper.md — AI-drevet research-inntak til kunnskapsgrafen
    • live_ai_assistent.md — Sanntids faktoid-oppslag under innspilling
    • produktivitetssuite.md — Kanban, chat, show notes (SpacetimeDB-tung)
    • podcastfabrikken.md — Publiseringspipeline (Whisper + OpenRouter + RSS)
    • podcast_statistikk.md — IAB-kompatibel lytterstatistikk fra Caddy-logger
    • valgomat.md — Publikumsrettet valgomat (SpacetimeDB)
    • jobbkø.md — Felles PostgreSQL-basert køsystem for alle bakgrunnsjobber
    • synkronisering.md — PostgreSQL ↔ SpacetimeDB dataflyt og eierskapsmodell
    • api_grensesnitt.md — Kommunikasjonskart: SvelteKit er web-API, Rust er worker

Stack

  • Backend/Automasjon: Rust
  • Frontend: SvelteKit (TypeScript, PWA)
  • Sanntid: SpacetimeDB (arbeidsflyt/state) + LiveKit (lyd/video)
  • Database: PostgreSQL (persistent/kunnskapsgraf) + SpacetimeDB (in-memory/sanntid)
  • AI: faster-whisper (transkripsjon), OpenRouter (Claude-modeller)
  • Infra: Docker Compose, Caddy, Authentik (SSO), Forgejo (Git)

Produksjonsserver

  • IP: 157.180.81.26
  • SSH: ssh sidelinja@157.180.81.26 (nøkkelbasert, sudo uten passord)
  • Filer: /srv/sidelinja/ (docker-compose.yml, .env, config/, data/, media/, logs/)
  • Git remote: forgejossh://git@git.sidelinja.org:222/sidelinja/sidelinja.git
  • Domener: sidelinja.org, auth.sidelinja.org (Authentik), git.sidelinja.org (Forgejo), vegard.info
  • Status: Lag A komplett (PostgreSQL, Caddy, Authentik, Forgejo, Redis). Lag B-C gjenstår.

Viktige regler

  • Aldri eksponere databaseporter mot internett (kun port 80/443 via Caddy)
  • Bruk tea CLI, ikke gh (vi bruker Forgejo, ikke GitHub)
  • Tunge AI-jobber (Whisper, OpenRouter) skal aldri blokkere web-requests
  • Kod og test lokalt i WSL2, deploy via push til Forgejo + SSH pull
  • Sjekk alltid docs/features/<navn>.md før du implementerer en feature