Repository Core
Denne siden forklarer hva Ta-Na-Si Media & Document Repository er bygget av — arkitekturen, teknologien og menneskene bak utviklingen. Vi tror på full åpenhet: alle som bruker et arkiv, eller vurderer å drive sitt eget, fortjener å vite nøyaktig hva systemet består av. Om-siden forklarer hva arkivet er til; denne siden forklarer hvordan det virker.
1. Hva Repository Core er
Repository Core er programvaren dette arkivet kjører på: et fullstendig uavhengig, selvhostet digitalt arkivsystem, skrevet fra grunnen av for ett eneste formål — å lagre, ordne og åpent levere dokumenter og medier som dokumenterbart kildemateriale. Det er ikke basert på WordPress, Joomla, Drupal eller noe annet ferdigbygd CMS, og det bruker ikke noe PHP-rammeverk. Hver komponent — databaselaget, søkemotoren, kurateringsarbeidsrommet, de offentlige sidene — ble utformet og skrevet spesielt for denne oppgaven.
Programvaren er bygget som en multiinstallasjonsplattform: den betjener ikke ett sentralt arkiv, men bærer mange atskilte, uavhengige. Hvert arkiv — enten det er en liten familiesamling eller et stort regionalt arkiv — er sin egen komplette installasjon med egen database, egne filer og egen forvalter. Det finnes ingen delt infrastruktur mellom arkivene og ingen sentral tjeneste de er avhengige av.
2. Én kodebase, mange uavhengige arkiver
Hver installasjon kjører den identiske kodebasen. Alt som er spesifikt for én server — dens offentlige adresse, dens databasetilgang, dens e-postavsender — ligger i én enkelt miljøfil som opprettes én gang under oppsettet og aldri reiser med koden. Denne strenge atskillelsen er det som får modellen til å virke: den samme programvareoppdateringen kan brukes på hvert arkiv, lite eller stort, uten å røre noe arkivs individuelle konfigurasjon.
Et nytt arkiv installeres gjennom en veiledet oppsettsassistent i nettleseren — ingen kommandolinje, ingen konfigurasjonsfiler å redigere for hånd. Assistenten snakker 18 språk, kontrollerer serverens forutsetninger, tester databaseforbindelsen før noe som helst skrives, og oppretter eierkontoen med et sikkert hashet passord. Databasetabellene opprettes av et idempotent migreringssystem: det kan kjøre et hvilket som helst antall ganger og lander alltid på riktig skjema. Senere skjemaendringer er versjonerte og spores, så hver installasjon kan se nøyaktig hvor den står; rutineendringer kjøres automatisk, mens tunge venter på eierens bevisste bekreftelse. Oppdateringer følger den samme omhyggelige rekkefølgen: sikkerhetskopier først, migrer så, tøm deretter bufferen.
3. Teknologistabel Versjon 1.0.0 (Thuringia)
4. Søk og fasettnavigasjon
Hjertet i det offentlige arkivet er søket. Én enkelt fulltekstindeks dekker hver publiserte post — tittel, beskrivelse, sammendrag, notater og artikkeltekst — så ett søkefelt når alt. Men fulltekst alene er ikke nok for seriøs research, og derfor klassifiseres hver post i tillegg langs ni fasettakser:
- Emne — temaene og motivene en post handler om.
- Sted — de geografiske stedene en post knytter seg til, hentet fra en strukturert stedsfortegnelse (se GeoNames-avsnittet nedenfor).
- Språk — språket i postens innhold, blant 49 språk med innebygd støtte.
- Bidragsyter — menneskene som var med: forfattere, talere, fotografer, redaktører.
- Sjanger — typen materiale: vitnesbyrd, analyse, rapport og så videre.
- Del av — det større verket en post hører til; binder sammen flerdelt materiale.
- Samling — kuraterte, navngitte grupperinger som vedlikeholdes av arkivets forvaltere.
- Serie — ordnede grupperinger for materiale som følger en rekkefølge.
- Tilgang — postens tilgangsnivå, for eksempel offentlig eller bare for medlemmer.
Fasettnavigasjonen fungerer slik forskere er vant til fra store institusjonelle arkiver. Ved siden av resultatene viser hver akse sine hyppigste verdier med løpende trefftall — ett klikk snevrer inn resultatene, og filtre fra ulike akser kan kombineres fritt: for eksempel alle lyd-poster på tysk om emnet utdanning fra 1990-tallet. Aktive filtre vises som fjernbare merker over resultatene, så den gjeldende innsnevringen alltid er synlig, og hvert filter kan slippes igjen med ett klikk. Der en akse rommer flere verdier enn sidefeltet viser, kan et fullstendig alfabetisk register over hele aksen blas gjennom, bokstav for bokstav.
Utover fasettene kan resultatene avgrenses etter materialtype (artikler, lyd, video, dokumenter, bilder, datasett — flere samtidig om ønskelig) og etter dato, enten gjennom raske tiårslenker eller et eksakt årsspenn. Resultatene kan sorteres etter relevans, tittel eller dato og vises på fire måter: som en detaljert liste, et bildegalleri, et kompakt rutenett eller en lysbildevisning i fullskjerm. Hele søketilstanden — søkeord, filtre, sortering, visning — ligger i adresselinjen, så enhver resultatside kan bokmerkes, siteres og deles akkurat slik den står.
Fasettene er ikke frittsvevende merkelapper: ordforrådene deres kurateres av arkivets forvaltere, og akser som samling og serie kan organiseres hierarkisk. Hver fasettverdi som vises på en postside, lenker tilbake inn i søket, slik at en leser alltid kan svinge fra én interessant post til alt annet arkivet oppbevarer om samme emne, sted, person eller serie.
5. Postsider
Hver post har sin egen side med typetilpasset presentasjon: lyd og video spilles direkte på siden, PDF-dokumenter åpnes i en innebygd leser, bilder kan granskes i en zoombar dybdevisning, og artikler gjengis fra trygt filtrert Markdown. Ved siden av selve filen viser en postside den fullstendige beskrivelsen, bidragsyterne, det større verket den hører til (med navigasjon mellom delene), beslektede poster som er verdt å se etterpå, og ferdige kildehenvisninger i Chicago-, APA- og MLA-format. Hver post bærer maskinlesbare metadata (schema.org JSON-LD) og en stabil adresse som aldri endres; korte permanente lenker på formen /go/… kan tildeles for sitering på trykk og i eksterne henvisninger.
6. Språk
Arkivet er bygget for en flerspråklig verden, på to atskilte nivåer.
Grensesnittet — alt en besøkende eller forvalter leser på selve sidene — er skrevet på engelsk og holder hver synlig tekst i oversettbare språkfiler, aldri begravd i kode. Språkpakker for grensesnittet på 18 språk er under forberedelse og oversettes for tiden: engelsk, tysk, fransk, italiensk, spansk, portugisisk, nederlandsk, russisk, polsk, svensk, dansk, norsk, kinesisk, japansk, koreansk, tyrkisk, tsjekkisk og rumensk. Pakkene installeres og forvaltes fra administrasjonspanelet, som også følger med på hvor komplett hver oversettelse er mot den engelske kilden. Oppsettsassistenten snakker alle 18 allerede i dag.
Innholdet — det arkiverte materialet selv — har innebygd støtte for 49 språk: engelsk, tysk, fransk, italiensk, spansk, portugisisk, nederlandsk, russisk, ukrainsk, polsk, gresk, svensk, dansk, norsk, tyrkisk, kinesisk, hindi, arabisk, indonesisk, japansk, vietnamesisk, koreansk, belarusisk, tsjekkisk, slovakisk, ungarsk, rumensk, bulgarsk, kroatisk, slovensk, finsk, bengali, urdu, persisk, islandsk, irsk, swahili, thai, filipino, hebraisk, panjabi, telugu, tamil, marathi, hausa, joruba, amharisk, javanesisk og pashto. Postene merkes med språket i innholdet sitt, og språkfasetten i søket filtrerer på hvert av dem — så en leser kan for eksempel hente frem alt arkivet oppbevarer på ukrainsk eller på arabisk med ett klikk. Høyre-til-venstre-skrifter som arabisk, hebraisk, persisk og urdu vises korrekt hele veien gjennom.
I tillegg åpner en språkvelger på hver offentlige side en maskinoversatt visning av siden, uten at noe tredjepartsskript lastes inn i selve siden.
7. Stedsdata: GeoNames
Stedsfasetten bygger på en geografisk fortegnelse organisert som et hierarki — land, region, sted — slik at poster kan stedfestes presist og gjenfinnes via geografien. Grunndataene (land og deres administrative regioner verden over) kommer fra den geografiske databasen GeoNames og importeres til et lokalt oppslagslager under oppsettet eller senere fra administrasjonspanelet; arkivets forvaltere kan utvide det med sine egne lokale steder. Stedsdata: GeoNames.org, lisensiert under CC BY 4.0.
8. Vokabulardata: emne- og sjangerkataloger
De kuraterte vokabularene bak fasetter som emne og sjanger leveres med programvaren og oversettes sentralt, slik at begrepene deres bærer mening på hvert grensesnittspråk. For å holde dem forenlige med etablerte standarder for kunnskapsorganisering tjener følgende offentlige kontrollerte vokabularer som referansekilder for katalogarbeidet: EuroVoc, Den europeiske unions flerspråklige tesaurus (© Den europeiske union, CC BY 4.0), IPTC Media Topics (© IPTC, CC BY 4.0) og Getty Art & Architecture Thesaurus (ODC-By 1.0). Hvert katalogbegrep som er avledet fra et eksternt vokabular, registrerer sitt opphav, og den fullstendige listen over alle tredjepartskomponenter og datakilder følger med hver installasjon: les den her.
9. Arbeidssiden
Bak det offentlige arkivet ligger et administrasjonspanel inndelt i fire områder: Personstyring (operatør- og medlemskontoer, roller, rettigheter), Intern publisering (kurateringsarbeidsrommet for poster og editorene), Plattformskonfigurasjon (innstillinger, medieformer, fasetter, språk, nettstedsstruktur) og Teknologi og data (systemstatus, diagnostikk, sikkerhetskopier). Alt en arkivforvalter trenger å konfigurere, nås gjennom disse sidene — å drive et arkiv krever ingen kodeendringer.
Poster går gjennom en tydelig kurateringsarbeidsflyt: de opprettes som utkast, fylles med metadata og fasetter, sendes eventuelt inn til gjennomgang og publiseres deretter — eller arkiveres igjen senere. Filer lastes opp i små, gjenopptakbare blokker, så store medier overlever ustabile forbindelser, og hver opplasting verifiseres mot sin deklarerte type ved filsignaturkontroll før den godtas. Forhåndsvisningsbilder genereres automatisk der serveren støtter det.
Et valgfritt medlemsområde lar et arkiv vokse utover forvalterne sine: registrerte medlemmer kan betros steg for steg over fire faste nivåer, fra å lese og diskutere opp til å kuratere og publisere poster. Rettighetene er finkornede på begge sider — administrative roller kan defineres fritt og henter fra et detaljert rettighetsregister, og individuelle overstyringer kan utvide eller snevre inn tilgangen til hver enkelt person. Eierens tilgang holdes bevisst helt utenfor databasen, slik at døren til et arkiv aldri kan låses av en ødelagt fil eller en mislykket endring.
10. Datasikkerhet
Sikkerhetskopier har førsteprioritet: en arkivforvalter kan opprette datostemplede ZIP-sikkerhetskopier av databasen, medieinnholdet, installasjonen eller alt på én gang — på forespørsel, med en oppbevaringsregel som beholder de nyeste og fjerner de eldste. Hver sikkerhetskopi kan i tillegg replikeres eksternt til enhver S3-kompatibel lagringstilbyder. Gjenopprettingen er bevisst sikret: systemet kontrollerer at en sikkerhetskopi passer til installasjonen, og tar en fersk sikkerhetskopi før det rører noe som helst. Sammen med den versjonerte skjemasporingen betyr det at et arkiv bygget med omhu kan vedlikeholdes, flyttes og repareres på lang sikt.
11. Designprinsipper
Arkivsystemet er bygget rundt et lite sett ufravikelige prinsipper som har styrt hver arkitekturbeslutning:
- Ingen sporing, ingen analyse, ingen tredjepartsforespørsler — hver ressurs, inkludert skrifter og skriptbiblioteker, leveres fra arkivets egen server. Ingenting om en besøkende sendes noe sted.
- Åpent crawlbart fra grunnen av — rent HTML, et strukturert nettstedskart, beskrivende metadata og en robots.txt som ønsker søkemotorer og KI-systemer velkommen, slik at de arkiverte faktaene kan bli funnet og lest vidt og bredt.
- Utskrivbart og nedlastbart — dokumenter er ment å forlate skjermen og komme ut i den virkelige verden.
- Lesbart på mange språk — 18 grensesnitt-språkpakker under forberedelse, 49 innholdsspråk med innebygd støtte i søk og fasetter og en språkvelger på hver offentlige side (se avsnittet om språk ovenfor).
- Minimale, inngjerdede avhengigheter — en håndfull selvhostede komponenter (en Markdown-parser på serveren; editor- og leserbiblioteker i nettleseren), holdt strengt atskilt fra systemets egen kode. Ingen CDN, ingen pakkehåndterer, ingen byggetrinn.
- Miljøagnostisk — den identiske koden kjører på hver installasjon; bare én miljøfil er forskjellig per server.
- Degraderer verdig — valgfrie funksjoner kontrollerer forutsetningene sine og slår seg rent av der en server ikke kan bære dem, i stedet for å knekke arkivet.
12. Utviklingskrediteringer
👥 Prosjekt & innhold
Raven D. Pond & Keylam Folker — grunnleggere av Ta-Na-Si-prosjektet og forvaltere av denne arkivprogramvaren. All redaksjonell retning, alle kuratoriske beslutninger og prosjektvisjonen bak denne programvaren stammer i sin helhet fra Raven og Keylam. De definerte hvert krav, testet hver funksjon og ledet utviklingen av dette systemet fra det første konseptet til dagens form; hver arkitekturbeslutning ble tatt og godkjent av Keylam.
✨ Programvareutvikling
Claude (Anthropic) — KI-assistenten Claude tjente som primær utviklingspartner for dette arkivsystemet. PHP-backenden, multidriver-databaselaget, søke- og fasettmotoren, administrasjonspanelet, frontend-designsystemet og alle hjelpeverktøyene ble utformet og skrevet i en samarbeidsprosess mellom Raven & Keylams krav og Claudes kodearbeid. Dette arkivsystemet er et eksempel på et uavhengig arkiv bygget gjennom direkte, samarbeidende programvareutvikling mellom menneske og KI for et virkelig prosjekt.
📅 Utviklingsforløp
Utviklingen begynte midt i mai 2026 og har fortsatt i daglig samarbeid siden. Programvaren bærer versjon 1.0.0; denne siden gjenspeiler dens tilstand per juli 2026.
13. Reglene denne programvaren kommer med
Hver installasjon av denne programvaren bærer de samme reglene, og den som installerte dette arkivet, godtok dem før en eneste fil ble skrevet. De er korte, og de ble skrevet for å leses av et menneske, ikke for å tolkes av en advokat: les dem her.
I én setning: arkivet du ser på, tilhører fullt og helt menneskene som driver det — navnet, samlingen, medlemmene, dataene — og prosjektet bak programvaren holder ingen nøkkel til noe av det. Det som blir stående i hver installasjon, er programvarens eget navn, grunntekstene og navngivelsen av de to menneskene som skapte prosjektet. Ikke fordi en lisens sier det, men fordi et arkiv som lyver om sitt eget opphav, har brutt selve det som det finnes for å gjøre.
14. Kontakt & tilbakemeldinger
Dette er et levende system — det utvikler seg med prosjektet. Om du støter på et teknisk problem eller en død lenke, eller har et forslag til forbedring, ta gjerne kontakt via kontaktsiden som er lenket i bunnteksten på hver side, eller legg igjen en kommentar på en av plattformkanalene våre. Vi leser alt.