Så er der lige en lille opdatering på min tidligere post / stolpe, om hjælp til et potentielt 4. semester projekt.

Vores ide er blevet godkendt, og vi har oveni finpudsning af 3. semesters projekt, og eksamensforberedelse netop afleveret problemformuleringen for projektet.

Der mangler den sidste godkendelse af problemformuleringen, men det er rent “proforma” at vi på nuværende tidspunkt har valgt 3 specialer hver, men får kun 2 at arbejde med, og underviserne skal sikre sig, at ingen af os kommer til at “træde hinanden over tæerne”, ved at have de samme specialer.

Men her har i en lille teaser for projektet, med de individuelle ansvarsområder fordelt mellem os:

**Projektidé: ** CatchUp er et open-source, europæisk socialt medie, skabt som en reaktion på den stigende skepsis overfor amerikansk tech, især efter Trumps genvalg og USA’s håndtering af globale forhold. Projektet sigter efter at være et europæisk alternativ til platforme som Facebook, Mastodon og Twitter, med respekt for GDPR og borgernes digitale rettigheder.

Formål: Målet er ikke at skabe et færdigudviklet produkt, men at udvikle et proof of concept og et eksperimentelt læringsprojekt, hvor teknologier og koncepter afprøves under europæiske rammer.

Inspiration og struktur: CatchUp er et socialt medie, der kombinerer det bedste fra platforme som Facebook med den nære fællesskabsstemning fra Hestenettet. Det er skabt til lokale og interessebaserede fællesskaber, hvor folk kan dele, diskutere og engagere sig – uden at være fanget i algoritmer eller annoncejagt.

CatchUp udvikles som en decentral platform, hvor flere servere – både private og offentlige – kan køre selvstændigt, men stadig tale sammen. Det betyder, at fx en dansk server og en norsk server kan have hver deres brugere, men brugerne kan stadig følge og interagere med hinanden på tværs. Den tekniske inspiration kommer fra Fediverse-modellen, som bruges i fx Mastodon.

Formålet er at skabe et europæisk, open-source alternativ til de store sociale medier – med fokus på fællesskab, ejerskab og brugernes privatliv. Kort sagt: Et SoMe hvor fællesskabet er vigtigere end profitten, og hvor du ejer dine egne data.

Projektform: I stedet for en traditionel Product Owner, benytter vi os af en “public PO”, hvor der hver 14. dag udgives en opdatering i form af blog, post eller video, postet på relevante platforme som LinkedIn, r/DKudvikler og Feddit.dk. Det sikrer gennemsigtighed og inviterer til feedback fra faglige interessenter. Vi har allerede loddet stemningen på r/DKUdvikler og Feddit.dk for projektet, og har fået positiv respons fra interessenter på begge fora, hvor folk er villige til at lave code reviews og komme med anden feedback undervejs i hele projektet.

Vision:

  • Etisk, europæisk SoMe-alternativ
  • GDPR-venligt og open source
  • Eksperimenterende og læringsfokuseret
  • Community-drevet og transparent
  • Inspireret af decentrale netværk og lokale fællesskaber

Implementering af specialer:

Person 1 **Ansvarsområder: **

  • Bygning af frontend i **React **
  • Strukturere komponenter, routing, state management
  • Udvikle scripts til at lette udviklings- og testprocessen, fx automatisering af gentagne udvikler-opgaver eller bots til simulering af aktivitet på platformen
  • Integrere API’er i frontend-delen Integration:
  • Tæt samarbejde med Person 2 ift. Tailwind + samtykke
  • Samarbejde med Person 4 om API/backend struktur

Person 2 **Ansvarsområder: **

  • Fokus på UI styling og brugeroplevelse med Tailwind CSS
  • Designe cookie consent banners og evt. cookie-drevet funktionalitet (fx dark mode eller analytics toggles)
  • Medansvar for API-design – fx login, sessions, authentication **Integration: **
  • Samarbejde med Person 1 om frontend/api-integration
  • Sikre privacy/overholdelse af regler – GDPR-venlig tilgang

Person 3 **Ansvarsområder: **

  • Fokusere på Gamification: badges, XP, levels, “top contributors”, streaks, points-system
  • Designe og udvikle en spilbaseret hub i Unity, hvor brugere kan logge ind, bevæge sig rundt og interagere i et fælles digitalt rum. Sikre en meningsfuld integration mellem hubben og resten af websitet, så spiloplevelsen understøtter sociale funktioner og data – eksempelvis gennem brugerprofiler, badges, XP og niveauer.
  • Designe UI-assets (ikoner, profilbillederammer, feed elementer)
  • Evt. implementere små spil eller interaktive oplevelser – som en del af engagement (bonusfeature, hvis tid tillader) **Integration: **
  • Samarbejde med frontend-personer om indplacering af UI-elementer
  • Gamification kan gøres både frontend og backend – så samarbejde med Person 4 for datalagring og pointsystem
  • Integrere brugerdata logik

P4 **Ansvarsområder: **

  • Systemdesign og arkitektur: Ansvarlig for backend-arkitektur med fokus på Clean Architecture, lagdeling, API-versionering.
  • Database-design: Design og modellering af den relationelle database (brugere, opslag, kommentarer, likes m.m.) med fokus på struktur og dataintegritet.
  • CI/CD og DevOps: Opsætning af GitHub Actions pipelines til automatiseret test og deployment samt implementering af code quality tools.
  • Teknisk integration: Samarbejde om API-design og datamodeller samt ansvar for teknisk infrastruktur og deployment-strategi. **Integration: **
  • Arbejde tæt sammen med Person 1 og 2 om API & datamodeller
  • Være lead på teknisk infrastruktur og deployment
  • SorteKaninMA
    link
    fedilink
    arrow-up
    2
    ·
    2 days ago

    Den tekniske inspiration kommer fra Fediverse-modellen, som bruges i fx Mastodon.

    Skal det forstås sådan at i vil benytte ActivityPub? :)

    Lyder som et sjovt projekt, held og lykke!

    • DenSortePingvinOP
      link
      fedilink
      arrow-up
      2
      ·
      1 day ago

      Uha lige præcis hvordan vi implementerer det er vi ikke helt låst fast i endnu.

      Men resten af gruppen syntes det var en fed ide med decentralisering.

      Men vil ihvertfald drage inspiration fra feddiverset, og der er ingen grund til at opfinde den dybe tallerken, hvis den allerede eksisterer

      • jo det er nok activitypub vi vil benytte 😅
      • SorteKaninMA
        link
        fedilink
        arrow-up
        3
        ·
        1 day ago

        Cool, jeg har selv lært en del om ActivityPub for nyligt. Jeg fandt den her blog post om emnet ret nyttig da jeg prøvede at forstå hvordan det fungerer. Standarderne er desværre ikke særlig pædagogiske men det er faktisk et ret simpelt system når det kommer til stykket.

        • DenSortePingvinOP
          link
          fedilink
          arrow-up
          2
          ·
          1 day ago

          Fedt mange tak for linket, skal helt bestemt kigges i sommerferien 😊

          Snakker om at starte så småt op på high level i sommerferien, så vi kan få noget af det “kedelige” af vejen, og starte på et godt sted

        • EvilCartyen
          link
          fedilink
          arrow-up
          1
          ·
          1 day ago

          En nice feature som NeoDB fx har er at man kan logge ind med konti fra andre fediverse-instanser, det er super praktisk. Så kan man vælge om ting skal auto-postes eller boostes på den konto man logger ind med.

          Tjek evt selv på https://minreol.dk/