[{"data":1,"prerenderedAt":216},["ShallowReactive",2],{"project-/da/projects/2025-10-frederiksberg-kommune-een-indgang":3},{"id":4,"title":5,"body":6,"description":191,"extension":192,"meta":193,"navigation":211,"path":212,"seo":213,"stem":214,"__hash__":215},"content/da/projects/2025-10-frederiksberg-kommune-een-indgang.md","Frederiksberg Kommune — Een Indgang",{"type":7,"value":8,"toc":187},"minimark",[9,95,101],[10,11,12,13,19,20,24,25,30,31,35,36,40,41,46,47,52,53,58,59,63,64,68,69,74,75,79,80,84,85,89,90,94],"p",{},"Jeg blev ansat af ",[14,15,18],"span",{"className":16},[17],"color-light-blue","Frederiksberg Kommune"," til at bygge den nye ",[14,21,23],{"className":22},[17],"Een Indgang"," platform — en moderne, borgervendt service der strømliner adgang til kommunale tjenester og arrangementsansøgninger. Bygget med ",[14,26,29],{"className":27},[28],"color-zest","Nuxt 4"," og ",[14,32,34],{"className":33},[28],"TypeScript",", leverer løsningen en robust full-stack arkitektur med et typesikkert ",[14,37,39],{"className":38},[28],"tRPC"," API, datamodellering via ",[14,42,45],{"className":43},[44],"color-sun","Drizzle"," på ",[14,48,51],{"className":49},[50],"color-electric","PostgreSQL",", og streng validering med ",[14,54,57],{"className":55},[56],"color-lavender","Zod",". Appen tilbyder sikker OIDC autentificering med ",[14,60,62],{"className":61},[56],"MitID"," (via Nets eID Broker), state management gennem ",[14,65,67],{"className":66},[44],"Pinia",", og en visuel drag-and-drop planlægningsoplevelse til placering af scener, boder og faciliteter på lokationskort. Tilgængelighed, lokalisering og pålidelighed er førsteprioritet gennem ",[14,70,73],{"className":71},[72],"color-bright-green","WCAG 2.1"," mønstre, ",[14,76,78],{"className":77},[28],"i18n",", end-to-end tests med ",[14,81,83],{"className":82},[72],"Playwright",", og CI/CD på ",[14,86,88],{"className":87},[17],"GitHub Actions"," med ",[14,91,93],{"className":92},[17],"Docker",".",[10,96,97],{},[98,99,100],"strong",{},"Nøglebidrag:",[102,103,104,115,122,135,138,149,159,166,176,184],"ul",{},[105,106,107,108,111,112],"li",{},"Designet full-stack arkitekturen med ",[14,109,29],{"className":110},[28],", server routes, og typesikkert ",[14,113,39],{"className":114},[28],[105,116,117,118,121],{},"Implementeret OIDC auth med ",[14,119,62],{"className":120},[56]," via Nets eID Broker",[105,123,124,125,46,128,131,132],{},"Modelleret domænet med ",[14,126,45],{"className":127},[44],[14,129,51],{"className":130},[50]," og validering med ",[14,133,57],{"className":134},[56],[105,136,137],{},"Bygget drag-and-drop kortplanlægnings UI til event artefakter (scener, boder, faciliteter)",[105,139,140,141,144,145],{},"Etableret state og dataflows med ",[14,142,67],{"className":143},[44]," og composables med ",[14,146,148],{"className":147},[28],"VueUse",[105,150,151,152,155,156],{},"Tilføjet ",[14,153,78],{"className":154},[28]," og implementeret tilgængelige UI mønstre for at opfylde ",[14,157,73],{"className":158},[72],[105,160,161,162,165],{},"Opsat testing med ",[14,163,83],{"className":164},[72]," plus linting/formatering (ESLint/Prettier)",[105,167,168,169,172,173],{},"Automatiseret CI/CD med ",[14,170,88],{"className":171},[17]," og containerisering via ",[14,174,93],{"className":175},[17],[105,177,178,179],{},"Implementeret transaktionelle emails gennem ",[14,180,183],{"className":181},[182],"color-ruby","Sendgrid",[105,185,186],{},"Leveret dokumentation, admin workflows (statusændringer, redigeringer), og overdragelse til kommunens team",{"title":188,"searchDepth":189,"depth":189,"links":190},"",2,[],"Jeg blev ansat af Frederiksberg Kommune til at bygge den nye Een Indgang platform — en moderne, borgervendt service der strømliner adgang til kommunale tjenester og arrangementsansøgninger. Bygget med Nuxt 4 og TypeScript, leverer løsningen en robust full-stack arkitektur med et typesikkert tRPC API, datamodellering via Drizzle på PostgreSQL, og streng validering med Zod. Appen tilbyder sikker OIDC autentificering med MitID (via Nets eID Broker), state management gennem Pinia, og en visuel drag-and-drop planlægningsoplevelse til placering af scener, boder og faciliteter på lokationskort. Tilgængelighed, lokalisering og pålidelighed er førsteprioritet gennem WCAG 2.1 mønstre, i18n, end-to-end tests med Playwright, og CI/CD på GitHub Actions med Docker.","md",{"client":18,"dateFrom":194,"dateTo":195,"type":196,"skills":197,"role":202,"link":203,"images":204},"2025-08-01","2025-12-01","Freelance",[29,198,199,45,57,67,200,83,73,88,93,201,78],"Typescript","Figma","trpc","oidc","Full Stack Udvikler","https://www.frederiksberg.dk/",[205,206,207,208,209,210],"images/projects/frederiksberg-kommune/fk-een-indgang-1.avif","images/projects/frederiksberg-kommune/fk-een-indgang-2.avif","images/projects/frederiksberg-kommune/fk-een-indgang-3.avif","images/projects/frederiksberg-kommune/fk-een-indgang-4.avif","images/projects/frederiksberg-kommune/fk-een-indgang-5.avif","images/projects/frederiksberg-kommune/fk-een-indgang-6.avif",true,"/da/projects/2025-10-frederiksberg-kommune-een-indgang",{"title":5,"description":191},"da/projects/2025-10-frederiksberg-kommune-een-indgang","yKEcw4_zxOHn5clUEg2Nhkzkl32HF_SVAqRTf19KpAQ",1779177084242]