Om Projektet

AI-Driven Utveckling

Detta projekt är ett exempel på modern utveckling, helt och hållet skapat med hjälp av AI-verktyget Cursor, drivet av språkmodellen Gemini 3 Pro.

Ingen kod har skrivits manuellt. Varje rad kod, från databasstruktur till CSS-styling och logik, är genererad genom dialog med AI-assistenten. Det demonstrerar kraften i modern AI-assisterad mjukvaruutveckling.

Teknikstack

Denna bokningsapplikation är byggd med moderna webbteknologier med fokus på prestanda, enkelhet och användarvänlighet (samt lite nostalgi).

Frontend & Backend

SvelteKit

Fullstack-ramverk som ger en snabb och smidig upplevelse genom server-side rendering (SSR) och progressiv enhancement.

Språk

TypeScript

För typsäkerhet och robust kodbas, vilket minskar buggar och underlättar utveckling.

Databas

SQLite

Körs med better-sqlite3 och WAL-mode (Write-Ahead Logging) för hög prestanda och samtidig läsning/skrivning utan låsningar. Databasen lagras på persistent volym (/data) för att överleva omstarter.

Design

CSS Variables

Ett flexibelt temasystem som hanterar Ljust, Mörkt och C64-läge helt utan CSS-ramverk.

PDF-generering

PDFKit

Server-side PDF-generering för att exportera bokningsscheman som professionella dokument.

Hosting

Fly.io

Deployad på Fly.io med persistent volym för databaslagring och automatisk skalning.

Funktioner

  • Bokningssystem: Skapa tider, hantera pauser och unika URL:er med kort ID-format.
  • Plats/Länk: Lägg till fysisk plats eller videolänk (Zoom/Teams) för varje bokning.
  • Kommentarer: Studenter kan lämna kommentarer vid bokning som endast läraren ser.
  • Admin-funktioner: Ägare kan ta bort bokningar och exportera schema som PDF.
  • Dela: Enkel kopieringsfunktion för att dela bokningslänkar.
  • Race Condition-skydd: Databasnivå-låsning förhindrar dubbelbokningar.
  • Autentisering: Säkert inloggningssystem med sessioner.
  • Teman: Växla mellan Ljust, Mörkt och retro (C64) utseende.
  • Privat/Offentlig: Välj om bokarnas namn ska visas publikt eller endast för ägaren.

Licenser & Kreditering

Detta projekt använder öppen källkod. Här är en lista över de viktigaste komponenterna: