Nystart basert på arkitektonisk innsikt fra Sidelinja v1. Koden er ny, visjon og primitiver er validert gjennom tidligere arbeid. Inneholder: - Komplett arkitekturdokumentasjon (docs/arkitektur.md) - 6 vedtatte retninger (docs/retninger/) - Alle concepts, features, proposals og erfaringer fra v1 - Server-oppsett og drift (docs/setup/) - LiteLLM-konfigurasjon (API-nøkler via env) - Editor.svelte referanse fra v1 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
3.1 KiB
Status quo — Hva Sidelinja er i dag
En redaksjonell webapp med ambisiøse primitiver og tradisjonell overflate.
Hva fungerer
Meldingsboksen som universell primitiv
Den viktigste arkitekturbeslutningen. Én datamodell — meldingsboksen — er underlag for chat, kanban-kort, kalenderoppføringer, notater og faktoider. I stedet for fem separate domenemodeller har vi én fleksibel primitiv med view-konfigurasjoner oppå. Dette er genuint uvanlig og gir oss muligheter de fleste redaksjonelle verktøy ikke har.
Kunnskapsgrafen
Nodes og edges i PostgreSQL gir en rik struktur for å koble alt med alt — personer, temaer, episoder, fakta. Dette er ryggraden i det redaksjonelle arbeidet og skiller Sidelinja fra enklere verktøy.
Self-hosted med full kontroll
Hetzner VPS, Caddy, Authentik, Forgejo. Ingen avhengighet til skytjenester vi ikke kontrollerer. For et journalistisk verktøy er dette ikke bare en preferanse — det er et prinsipp.
AI som infrastruktur, ikke feature
LiteLLM som gateway, BYOK-modell, Whisper for transkripsjon. AI er ikke en knapp i UI-et — det er en del av maskineriet. Jobbkø-arkitekturen gjør at tunge operasjoner aldri blokkerer brukeropplevelsen.
Hva som er tradisjonelt
Navigasjon
Brukeren beveger seg mellom /chat, /kanban, /kalender som separate
sider. Til tross for at datamodellen er universell, føles opplevelsen
fragmentert — som et sett med separate verktøy som deler database.
Interaksjonsmodell
CRUD-mønsteret dominerer: opprett, rediger, slett, flytt. Interaksjonen er form-basert og eksplisitt. Brukeren "administrerer innhold" mer enn de "jobber sammen i et miljø."
Sanntid som tillegg
SpacetimeDB er lagt til for å gi sanntidsoppdatering, men arkitekturen er PostgreSQL-først. Sanntid er noe som skjer med tradisjonelle operasjoner, ikke noe som er grunnlaget for opplevelsen.
Spenninger
To sannhetskilder
PG og SpacetimeDB har et komplisert forhold. SpacetimeDB-loven definerer klare regler for hvem som eier hva, men selve eksistensen av loven vitner om en arkitektonisk spenning: vi har to systemer som begge vil være primærkilde, og vi bruker konvensjoner for å holde dem fra å kollidere.
Ambisiøs bunn, forsiktig topp
Meldingsboksen og kunnskapsgrafen åpner for opplevelser vi ikke leverer ennå. Datamodellen sier "alt henger sammen" — men UI-et sier "her er chatten, her er kanban-brettet, her er kalenderen." Grunnmuren er mer spennende enn det brukeren ser.
Produksjonsverktøy vs opplevelse
Sidelinja er designet for podcast-produksjon, men pendler mellom å være et effektivt arbeidsverktøy og noe mer oppslukende. Studioet og møterommet peker mot sanntidsopplevelser. Redaksjonen og kanban peker mot tradisjonelt prosjektstyringsverktøy. Begge er gyldige, men de trekker i ulike retninger.
Oppsummert
Sidelinja har en sterkere grunnmur enn overflaten viser. Meldingsboksen, kunnskapsgrafen og AI-infrastrukturen er genuint interessante primitiver. Spørsmålet er ikke om vi har bygget feil — men om overflaten utnytter det fundamentet faktisk tillater.