Under huven: MIK:s nya medlems- och verksamhetssystem
- mik-ng
- teknik
- projekt

Vid sidan av mik.fi har ett annat, betydligt större programvaruprojekt vuxit fram i klubben under ett och ett halvt år: mik-ng. Det är ingen offentlig webbplats, utan klubbens eget system för att hantera medlemmar, bokningar, fakturering, flygdagbok och flygplan — allt på ett ställe, byggt och underhållet av klubben själv.
Tio års historia bakom ett eget system
mik-ng är inte klubbens första egna system — det är en fortsättning på det extranät som varit i bruk sedan 2010. Ursprungligen handlade det om att underlätta faktureringen: innan dess måste flygplanens färdloggar i pappersform skannas och skickas till bokföringsbyrån för fakturering. Det första extranätet byggdes ovanpå WordPress med PHP, och utöver flygdagboken ingick en bokningskalender och en statussida för flygplanen — som i början helt enkelt var en webbkamerabild av den fysiska statustavlan i klubbhuset. Senare tillkom även andra funktioner, till exempel flygpaket.
Samma ursprungliga webbplats uppdaterades under årens lopp främst till nyare PHP-versioner. Ett större kliv togs 2020, när klubben gick över till elektronisk bokföring: faktureringen bytte från den halvt manuella tjänsten Helposti Lasku till Simplbooks. Samtidigt flyttades projektet till Git, driftsättningen automatiserades med Ansible-skript och systemet fick en egen testmiljö — tidigare hade man vant sig vid att skriva PHP direkt i produktion.
Varför bygger klubben ett eget system?
En flygklubbs vardag består av många delar som lätt sprids ut över olika tjänster: medlemsregister, flygplansbokningar, flygdagbok, fakturering, underhållsuppföljning, mötesprotokoll. Idén med mik-ng är att samla dem i ett system som klubben själv äger och utvecklar — inte bundet till en färdig, stelbent SaaS-produkt, utan på egna villkor, kodat av klubbmedlemmarna själva.
Projektgruppen kartlade också färdiga alternativ på marknaden, men eftersom klubben haft ett eget system i ett decennium hade den hunnit utveckla många egna arbetssätt som inte passade direkt in i färdiga produkter. Beslutet påverkades också av hur många frivilliga som fanns tillgängliga: man bedömde att det var möjligt att bygga ett nytt grundsystem på egen hand med de resurser klubben kunde erbjuda. AI-assisterad kodning var då, i början av 2025, inte i närheten av den nivå den har i dag — dess roll i projektet växte först senare, som framgår längre fram.
Bakom ligger också ett tydligt mål: att minska de frivilligas manuella arbete genom att automatisera så mycket som möjligt, och att ge klubbens beslutsfattare bättre och tydligare data som stöd för verksamheten.
Projektets start och tillväxt
Klubbens styrelse gav Niko Ikonen i uppdrag att förnya klubbens extranät, eftersom det gamla systemet hade börjat krångla — till stor del på grund av problem med dess tjänsteleverantör. Niko har varit projektets product owner från början. Han bjöd in frivilliga, och till projektets första möte den 28 februari 2025 samlades förutom han själv Mikko Nurmi, Juho Kolehmainen och Chris Whellams. Mikko skapade en monorepo-struktur för projektet, och strax därefter byggde Chris grunden för utvecklingsmiljön (Postgres, Docker, startskript). I juni 2025 började Niko också själv koda i projektet vid sidan av rollen som product owner, och i april 2026 anslöt ännu Joseph Russell, som sedan dess haft en central roll bland annat i arbetet med push-notiser och testtäckning.
Under ett och ett halvt år har projektet samlat över 1180 commits, nästan 400 GitHub-ärenden och över 700 pull requests — ett tecken på att det är ett aktivt system som används hela tiden och fortsätter att utvecklas, inte ett engångsprojekt.
Vad mik-ng klarar i dag
- Medlemshantering och inloggning utan lösenord — inloggningen sker med en engångslänk som skickas per e-post
- Bokningar och flygdagbok för flygplanen
- Fakturering, integrerad med bokföringsprogrammet Simplbooks
- Uppföljning av flygplan och underhåll, inklusive massa- och balansberäkning och hantering av flygplanens underhållsuppgifter
- Bränslepriser och ett bredare system för vätskehantering som är under utveckling
- Möten och avvikelserapporter
- Prov och kostnadsersättningar — teoriprov och reseräkningar i samma system
- Statistik och dashboards för att följa klubbens verksamhet, samt en liten klubbutik
- Push-påminnelser om kommande bokningar via webbläsaren — medlemmen kan slå på notiser på sin egen enhet, och systemet påminner automatiskt om en kommande flygning utöver e-posten
Den tekniska grunden är ett TypeScript-tungt pnpm-monorepo: React och Vite i frontend, Node.js och Express i backend, PostgreSQL som databas och Flyway för hantering av schemaändringar. Utvecklingsmiljön körs i Docker.
Hur ändringar når produktion
Publiceringsprocessen är automatiserad. Pull requests granskas med egna GitHub-arbetsflöden för både backend och frontend, och när en ändring slås ihop med huvudgrenen taggas versionen automatiskt utifrån versionsnumret i package.json. Publiceringen går genom miljöerna DEV → TEST → PROD på DigitalOceans plattform, och att gå till produktion kräver alltid ett separat, manuellt startat godkännande — inget hamnar i produktion av misstag med en enda sammanslagning. Dessutom tas automatiska säkerhetskopior av databasen med ett eget, separat schemalagt arbetsflöde.
Tidslinje och den stegvisa introduktionen av AI
- Februari 2025 — Styrelsen ger Niko i uppdrag att förnya extranätet, det första projektmötet samlar teamet och Mikko öppnar mik-ng-monorepot
- Mars 2025 — Chris börjar koda, grunden för utvecklingsmiljön byggs
- Juni 2025 — Fakturering och synkronisering av flygdagboken kommer med, funktionstakten ökar
- Augusti 2025 — Teamet skriver de första GitHub Copilot-instruktionerna: ett första steg mot systematisk AI-assisterad utveckling
- Mars 2026 — Copilots autonoma kodningsagent börjar öppna egna pull requests, inte bara föreslå kompletteringar
- April 2026 — Joseph ansluter, push-påminnelserna lanseras
- Maj–juni 2026 — Claude Code tas i bruk i utvecklingsarbetet, och
CLAUDE.mdsamlar instruktionerna som både Copilot och Claude Code följer i en enda källa - Augusti 2026 — Frontendens testtäckning lyfts i ett arbete i flera steg till den nivå som backend länge haft
AI:ns roll har vuxit stegvis: först skrivna instruktioner till AI-assistenter, sedan en agent som ger förslag, och till slut agenter som självständigt öppnar pull requests för granskning. Fram till augusti 2026 bär över 250 commits i mik-ng Claude Codes signatur sida vid sida med mänskliga upphovspersoner — betydligt fler än på den offentliga webbplatsen, vilket väl speglar hur mycket större och mer aktivt projekt mik-ng är.
Vad är på gång härnäst?
Utifrån de öppna GitHub-ärendena fortsätter utvecklingen åtminstone i följande riktningar:
- Ett bredare system för vätskehantering, som utöver bränsle även omfattar andra vätskor som används i klubben
- Bränsledata i realtid från Nummela flygfält (EFNU) direkt in i systemet
- Att slutföra frontendens testtäckning — ett stort arbete i flera steg, varav en betydande del redan publicerades i augusti 2026
- Refaktorering av gemensam kod för att ta bort överlappande lösningar för datahantering mellan olika delar
Inte färdigt, alltid i bruk
mik-ng är inte “färdigt” i ordets traditionella bemärkelse — det är ett verktyg som klubbens frivilliga utvecklar samtidigt som det används varje dag. När detta skrivs finns drygt trettio öppna GitHub-ärenden, från små användbarhetsfixar till större helheter. Om du blev intresserad och vill vara med och bygga, kontakta klubbens tekniska team!