Om Projektet

Dagens Dos är en modern nyhetsapplikation utvecklad som ett grupprojekt på Lexicon i Linköping. Projektet demonstrerar fullstack-utveckling med fokus på skalbarhet, typsäkerhet och användarvänlighet.

Mockup - Dagens Dos

Teknisk Stack

Frontend

  • Next.js 16 (App Router, Turbopack)
  • React 19 med TypeScript 6
  • Tailwind CSS 4
  • Radix UI, Embla Carousel, Lucide React
  • Next Themes (Dark/Light mode)

Backend

  • Next.js Server Actions
  • Prisma ORM 6 (PostgreSQL)
  • Better Auth
  • Zod validering
  • Databaslagrad rate limiting

Integrationer

  • Stripe betalningar
  • Gemini AI (Google)
  • UploadThing bilduppladdning
  • Nodemailer e-post
  • MDX Editor
  • Spotprices API & SMHI väderdata

Arkitektur och Funktionalitet

Server-First Arkitektur

Projektet använder genomgående Server Actions för backend-logik, vilket ger optimerad prestanda, automatisk caching och typsäker kommunikation mellan klient och server.

  • Server Components som standard
  • Server Actions för datahantering
  • Typsäkerhet med TypeScript och Zod
  • SEO-optimerad rendering

Användarfunktioner

  • Säker autentisering med e-postverifiering
  • Rollbaserad åtkomstkontroll (Admin, Editor, User)
  • Prenumerationssystem med Stripe
  • Premium innehåll med åtkomstkontroll
  • Kommentera, redigera och ta bort egna kommentarer
  • Sökfunktion med dynamiska slugs
  • Responsiv design med dark mode

Admin-funktioner

  • CRUD-operationer för artiklar och kategorier
  • Valfri AI-assisterad artikelgenerering med Gemini, direkt i samma formulär som manuell skapelse
  • Bilduppladdning via UploadThing (max 4MB)
  • MDX-editor för rich text innehåll
  • Användarhantering och rollfördelning
  • Statistik-dashboard med visualiseringar
  • Premium- och Editor's Choice-markering
  • Genomgående adminmeny (Sheet på mobil)

Externa API-integrationer

  • Spotpriser för el i Sverige (SE1-SE4)
  • SMHI väderdata
  • Google Gemini AI för innehållsgenerering
  • Stripe för betalningshantering
  • SMTP för e-postkommunikation

Teammedlemmar och Ansvarsområden

Magui

Backend och Betalningsintegration

  • CRUD-funktionalitet för artiklar och kategorier
  • Dashboard-visualiseringar
  • Stripe-integration och betalflöde
  • GDPR-kompatibel Cookie Banner
  • Rollbaserad åtkomstkontroll i Admin

Ahmed

AI-integration och Externa API

  • Elpris-API med visualisering av spotpriser
  • Gemini AI-integration för artikelgenerering
  • Google Search-integration i AI-flöde
  • MDX Editor-implementation
  • Structured output med Zod-validering

Johan

Autentisering, e-post och Stripe-konfiguration

  • Inloggning och registrering (formulär och sidor)
  • Better Auth e-postverifiering med Nodemailer
  • Kontaktformulär, mallar och server actions
  • Stripe-konfiguration i Better Auth
  • SMTP-konfiguration

Josefine

UX/UI, Autentisering och Innehållspresentation

  • UX/UI design och logotyp
  • Better Auth-implementation med Prisma
  • Rollhantering (Admin, Editor, User)
  • Mina Sidor och användarprofilhantering
  • Väderfunktion och kommentarssystem
  • Premium-flagga på artiklar
  • Sökfunktion och SLUG-system för SEO
  • Article rendering-komponenter
  • Editor's Choice Carousel
  • Projektledning

Projektinformation

Institution: Lexicon, Linköping

Projektkurs: Fullstack Webbutveckling

Utvecklingsteam: Magui, Johan, Josefine, Ahmed

Vi använder cookies för att säkerställa att du får den bästa upplevelsen på vår webbplats. För mer information om hur vi använder cookies, se vår cookiepolicy.