Repository Core
Den här sidan förklarar vad Ta-Na-Si Media & Document Repository är byggt av — dess arkitektur, dess teknik och människorna bakom dess utveckling. Vi tror på full transparens: den som använder ett arkiv, eller funderar på att driva ett eget, förtjänar att veta exakt vad systemet består av. Om-sidan förklarar vad arkivet är till för; den här sidan förklarar hur det fungerar.
1. Vad Repository Core är
Repository Core är programvaran som det här arkivet körs på: ett helt oberoende, självhostat digitalt arkivsystem, skrivet från grunden för ett enda syfte — att lagra, ordna och öppet tillhandahålla dokument och medier som belagt källmaterial. Det bygger inte på WordPress, Joomla, Drupal eller något annat färdigt CMS, och det använder inget PHP-ramverk. Varje komponent — databaslagret, sökmotorn, kurateringsverkstaden, de publika sidorna — har utformats och skrivits särskilt för den här uppgiften.
Programvaran är byggd som en multiinstallationsplattform: den betjänar inte ett centralt arkiv utan bär många separata, oberoende. Varje arkiv — vare sig det är en liten familjesamling eller ett stort regionalt arkiv — är sin egen kompletta installation med egen databas, egna filer och egen förvaltare. Det finns ingen delad infrastruktur mellan arkiven och ingen central tjänst som de är beroende av.
2. En kodbas, många oberoende arkiv
Varje installation kör en identisk kodbas. Allt som är specifikt för en enskild server — dess publika adress, dess databasåtkomst, dess e-postavsändare — bor i en enda miljöfil som skapas en gång vid installationen och aldrig reser med koden. Denna strikta åtskillnad är det som får modellen att fungera: samma programuppdatering kan tillämpas på varje arkiv, litet som stort, utan att röra något arkivs individuella konfiguration.
Ett nytt arkiv installeras genom en guidad installationsassistent i webbläsaren — ingen kommandorad, inga konfigurationsfiler att redigera för hand. Assistenten talar 18 språk, kontrollerar serverns förutsättningar, testar databasanslutningen innan något skrivs och skapar ägarkontot med ett säkert hashat lösenord. Databastabellerna skapas av ett idempotent migreringssystem: det kan köras hur många gånger som helst och landar alltid i det korrekta schemat. Senare schemaändringar versioneras och spåras, så att varje installation kan se exakt var den står; rutinändringar tillämpas automatiskt, medan tunga väntar på ägarens medvetna bekräftelse. Uppdateringar följer samma omsorgsfulla ordning: säkerhetskopiera först, migrera sedan, töm cachen sist.
3. Teknikstack Version 1.0.0 (Thuringia)
4. Sökning och fasettnavigering
Hjärtat i det publika arkivet är dess sökning. Ett enda fulltextindex täcker varje publicerad post — titel, beskrivning, sammanfattning, anteckningar och artikeltext — så att ett sökfält når allt. Men fulltext ensam räcker inte för seriös forskning, och därför klassificeras varje post också längs nio fasettaxlar:
- Ämne — de ämnen och teman en post handlar om.
- Plats — de geografiska platser en post rör, hämtade ur ett strukturerat platsregister (se avsnittet om GeoNames nedan).
- Språk — språket i postens innehåll, ur 49 språk med inbyggt stöd.
- Bidragsgivare — de människor som medverkat: författare, talare, fotografer, redaktörer.
- Genre — materialets art: vittnesmål, analys, rapport och så vidare.
- Del av — det större verk en post tillhör; knyter samman material i flera delar.
- Samling — kuraterade, namngivna grupperingar som underhålls av arkivets förvaltare.
- Serie — ordnade grupperingar för material som följer en sekvens.
- Åtkomst — en posts åtkomstnivå, till exempel offentlig eller endast för medlemmar.
Fasettnavigeringen fungerar så som forskare förväntar sig av stora institutionella arkiv. Bredvid resultaten visar varje axel sina vanligaste värden med levande träffantal — ett klick smalnar av resultaten, och filter från olika axlar kan kombineras fritt: till exempel alla ljud-poster på tyska i ämnet utbildning från 1990-talet. Aktiva filter visas som borttagbara brickor ovanför resultaten, så att den aktuella avgränsningen alltid är synlig och varje filter kan släppas igen med ett klick. Där en axel rymmer fler värden än sidopanelen visar kan ett fullständigt alfabetiskt index över hela axeln bläddras igenom, bokstav för bokstav.
Utöver fasetterna kan resultaten begränsas efter materialtyp (artiklar, ljud, video, dokument, bilder, datamängder — flera samtidigt om man vill) och efter datum, antingen via snabba decennielänkar eller ett exakt årsintervall. Resultaten kan sorteras efter relevans, titel eller datum och visas på fyra sätt: som utförlig lista, bildgalleri, kompakt rutnät eller bildspel i helskärm. Hela söktillståndet — fråga, filter, sortering, vy — bor i adressfältet, så att varje resultatsida kan bokmärkas, citeras och delas exakt som den står.
Fasetterna är inga fritt svävande taggar: deras vokabulär kurateras av arkivets förvaltare, och axlar som samling och serie kan ordnas hierarkiskt. Varje fasettvärde som visas på en postsida länkar tillbaka in i sökningen, så att en läsare alltid kan gå vidare från en intressant post till allt annat som arkivet förvarar om samma ämne, plats, person eller serie.
5. Postsidor
Varje post har sin egen sida med en presentation anpassad efter typen: ljud och video spelas upp direkt på sidan, PDF-dokument öppnas i en inbäddad läsare, bilder kan granskas i en zoombar djupvy, och artiklar renderas från säkert filtrerad Markdown. Vid sidan av själva filen visar en postsida den fullständiga beskrivningen, bidragsgivarna, det större verk den tillhör (med navigering mellan dess delar), relaterade poster värda att se härnäst samt färdiga källhänvisningar i Chicago-, APA- och MLA-format. Varje post bär maskinläsbara metadata (schema.org JSON-LD) och en stabil adress som aldrig ändras; korta permanenta länkar på formen /go/… kan tilldelas för citering i tryck och för externa hänvisningar.
6. Språk
Arkivet är byggt för en flerspråkig värld, på två skilda nivåer.
Gränssnittet — allt som en besökare eller förvaltare läser på själva sidorna — är skrivet på engelska och håller varje synlig text i översättbara språkfiler, aldrig begravd i kod. Gränssnittsspråkpaket för 18 språk förbereds och är för närvarande under översättning: engelska, tyska, franska, italienska, spanska, portugisiska, nederländska, ryska, polska, svenska, danska, norska, kinesiska, japanska, koreanska, turkiska, tjeckiska och rumänska. Paketen installeras och hanteras från administrationspanelen, som också håller reda på hur komplett varje översättning är gentemot den engelska källan. Installationsassistenten talar redan i dag alla 18.
Innehållet — det arkiverade materialet självt — har inbyggt stöd för 49 språk: engelska, tyska, franska, italienska, spanska, portugisiska, nederländska, ryska, ukrainska, polska, grekiska, svenska, danska, norska, turkiska, kinesiska, hindi, arabiska, indonesiska, japanska, vietnamesiska, koreanska, belarusiska, tjeckiska, slovakiska, ungerska, rumänska, bulgariska, kroatiska, slovenska, finska, bengali, urdu, persiska, isländska, iriska, swahili, thai, filipino, hebreiska, punjabi, telugu, tamil, marathi, hausa, yoruba, amhariska, javanesiska och pashto. Poster märks med språket i sitt innehåll, och sökningens språkfasett filtrerar på vart och ett av dem — en läsare kan alltså med ett klick ta fram allt som arkivet förvarar på ukrainska eller på arabiska. Höger-till-vänster-skrift som arabiska, hebreiska, persiska och urdu visas korrekt genomgående.
Dessutom öppnar en språkväxlare på varje publik sida en maskinöversatt vy av sidan, utan att något tredjepartsskript läses in på själva sidan.
7. Platsdata: GeoNames
Platsfasetten vilar på ett geografiskt register uppbyggt som en hierarki — land, region, plats — så att poster kan lokaliseras exakt och återfinnas via geografin. Grunddata (länder och deras administrativa regioner världen över) kommer från den geografiska databasen GeoNames och importeras till ett lokalt uppslagslager vid installationen eller senare från administrationspanelen; arkivets förvaltare kan utöka det med egna lokala platser. Platsdata: GeoNames.org, licensierad under CC BY 4.0.
8. Vokabulärdata: ämnes- och genrekataloger
De kuraterade vokabulärer som ligger bakom fasetter som ämne och genre levereras med programvaran och översätts centralt, så att deras termer bär mening på varje gränssnittsspråk. För att hålla dem förenliga med etablerade standarder för kunskapsorganisation tjänar följande offentliga kontrollerade vokabulärer som referenskällor för katalogarbetet: EuroVoc, Europeiska unionens flerspråkiga tesaurus (© Europeiska unionen, CC BY 4.0), IPTC Media Topics (© IPTC, CC BY 4.0) och Getty Art & Architecture Thesaurus (ODC-By 1.0). Varje katalogterm som härletts ur en extern vokabulär antecknar sitt ursprung, och den fullständiga listan över alla tredjepartskomponenter och datakällor följer med varje installation: läs den här.
9. Arbetssidan
Bakom det publika arkivet ligger en administrationspanel indelad i fyra områden: Personstyrning (operatörs- och medlemskonton, roller, rättigheter), Intern publicering (kurateringsverkstaden för poster och redigerarna), Plattformskonfiguration (inställningar, medieformer, fasetter, språk, webbplatsstruktur) och Teknik & data (systemstatus, diagnostik, säkerhetskopior). Allt som en arkivförvaltare behöver ställa in nås via de här sidorna — att driva ett arkiv kräver inga kodändringar.
Poster rör sig genom ett tydligt kurateringsflöde: de skapas som utkast, fylls med metadata och fasetter, lämnas eventuellt in för granskning och publiceras sedan — eller arkiveras igen senare. Filer laddas upp i små återupptagbara delar, så att stora medier överlever ostadiga uppkopplingar, och varje uppladdning verifieras mot sin deklarerade typ genom kontroll av filsignaturen innan den tas emot. Förhandsvisningsbilder genereras automatiskt där servern stöder det.
Ett valfritt medlemsområde låter ett arkiv växa bortom sina förvaltare: registrerade medlemmar kan ges förtroende steg för steg över fyra fasta nivåer, från att läsa och diskutera upp till att kuratera och publicera poster. Rättigheterna är finkorniga på båda sidor — administrativa roller kan definieras fritt och hämtar ur ett detaljerat rättighetsregister, och individuella undantag kan vidga eller snäva in en enskild persons åtkomst. Ägarens åtkomst hålls medvetet helt utanför databasen, så att dörren till ett arkiv aldrig kan låsas av en skadad fil eller en misslyckad ändring.
10. Datasäkerhet
Säkerhetskopior är en kärnfunktion: en arkivförvaltare kan skapa datumstämplade ZIP-säkerhetskopior av databasen, medieinnehållet, installationen eller alltihop på en gång — på begäran, med en bevaranderegel som behåller de nyaste och tar bort de äldsta. Varje säkerhetskopia kan dessutom replikeras externt till valfri S3-kompatibel lagringsleverantör. Återställningen är medvetet skyddad: systemet verifierar att en säkerhetskopia hör till installationen och tar en färsk skyddskopia innan det rör någonting. Tillsammans med den versionerade schemaspårningen betyder det att ett arkiv byggt med omsorg kan underhållas, flyttas och repareras på lång sikt.
11. Designprinciper
Arkivsystemet är byggt kring en liten uppsättning icke förhandlingsbara principer som har väglett varje arkitekturbeslut:
- Ingen spårning, ingen analys, inga tredjepartsanrop — varje resurs, inklusive typsnitt och skriptbibliotek, levereras från arkivets egen server. Ingenting om en besökare skickas någonstans.
- Öppet läsbart för sökrobotar som princip — ren HTML, en strukturerad sitemap, beskrivande metadata och en robots.txt som välkomnar sökmotorer och AI-system, så att de arkiverade fakta kan hittas och läsas brett.
- Utskrivbart och nedladdningsbart — dokument är gjorda för att lämna skärmen och ta plats i den verkliga världen.
- Läsbart på många språk — 18 gränssnittsspråkpaket under förberedelse, 49 innehållsspråk med inbyggt stöd i sökning och fasetter, och en språkväxlare på varje publik sida (se avsnittet Språk ovan).
- Minimala, inkapslade beroenden — en handfull självhostade komponenter (en Markdown-parser på servern; redigerar- och visningsbibliotek i webbläsaren), hållna strikt åtskilda från systemets egen kod. Inget CDN, ingen pakethanterare, inget byggsteg.
- Miljöagnostiskt — identisk kod körs på varje installation; bara en miljöfil skiljer sig per server.
- Mjuk nedtrappning — valfria funktioner kontrollerar sina förutsättningar och stänger av sig rent där en server inte kan bära dem, i stället för att knäcka arkivet.
12. Utvecklingskrediter
👥 Projekt & innehåll
Raven D. Pond & Keylam Folker — grundare av Ta-Na-Si-projektet och förvaltare av denna arkivprogramvara. All redaktionell inriktning, alla kurateringsbeslut och hela projektvisionen bakom programvaran kommer helt och hållet från Raven och Keylam. De definierade varje krav, testade varje funktion och vägledde utvecklingen av systemet från första idé till dess nuvarande form; varje arkitekturbeslut fattades och godkändes av Keylam.
✨ Programvaruutveckling
Claude (Anthropic) — AI-assistenten Claude tjänade som primär utvecklingspartner för det här arkivsystemet. PHP-backenden, multidrivrutinslagret för databaser, sök- och fasettmotorn, administrationspanelen, frontendens designsystem och alla kringverktyg utformades och skrevs i en samarbetsprocess mellan Ravens & Keylams krav och Claudes kodarbete. Det här arkivsystemet är ett exempel på ett oberoende arkiv byggt genom direkt samarbete mellan människa och AI i programvaruutveckling för ett verkligt projekt.
📅 Utvecklingstidslinje
Utvecklingen inleddes i mitten av maj 2026 och har fortsatt i dagligt samarbete sedan dess. Programvaran bär version 1.0.0; den här sidan speglar dess tillstånd i juli 2026.
13. Reglerna som följer med programvaran
Varje installation av den här programvaran bär samma regler, och den som installerade det här arkivet godkände dem innan en enda fil skrevs. De är korta, och de skrevs för att läsas av en människa snarare än tolkas av en jurist: läs dem här.
I en mening: arkivet du tittar på tillhör helt och hållet de människor som driver det — dess namn, dess samling, dess medlemmar, dess data — och projektet bakom programvaran håller ingen nyckel till något av det. Det som består, i varje installation, är programvarans eget namn, grundtexterna och namngivningen av de två människor som skapade projektet. Inte för att en licens säger det, utan för att ett arkiv som ljuger om sitt eget ursprung har brutit själva det som det finns till för.
14. Kontakt & återkoppling
Det här är ett levande system — det utvecklas med projektet. Om du stöter på ett tekniskt problem eller en trasig länk, eller har ett förslag till förbättring, hör gärna av dig via kontaktsidan som är länkad i sidfoten på varje sida, eller lämna en kommentar på någon av våra plattformskanaler. Vi läser allt.