Moln och hosting · 7 min läsning · Uppdaterad 15 augusti 2026
Så publicerar du en AI-byggd app och får en live-adress
Appar byggda i NorthernGo publiceras genom att du sparar dem. Koden laddas upp till Firebase Storage och projektposten pekar på den, och servern renderar det sparade dokumentet vid varje anrop. Premium- och Pro-projekt kan ta ett namn på dittnamn.northerngo.com; Gratis-projekt delas i stället via länken northerngo.com/?app=projektId. Det finns inget byggsteg, ingen terminal och inget deploy-kommando.
Att spara är att publicera
Den mentala modell de flesta tar med sig från andra verktyg är en byggkedja: du blir klar med appen, trycker på en deploy-knapp, ett bygge körs någonstans och ett statiskt paket landar på ett CDN. Sedan gör du en ändring och upprepar alltihop.
NorthernGo fungerar inte så, och att veta det sparar en hel del förvirrat klickande.
När du sparar ett projekt serialiseras appens fulla tillstånd till JSON och laddas upp till Firebase Storage på projects/<ditt-användar-id>/<projekt-id>.json. Projektposten i Firestore lagrar nedladdningsadressen till den filen tillsammans med projektets namn, dess subdomän, dess ikon och eventuella integrationer. Ingenting kompileras. Ingenting paketeras.
När någon besöker din app läser servern det sparade dokumentet och returnerar det. Följden är direkt: den skarpa appen är alltid den senaste versionen du sparade. Spara igen så är ändringen live vid nästa sidladdning, utan något ompubliceringssteg. Det finns heller ingen återställning till en tidigare version, vilket är baksidan av samma design — spara medvetet.
Steg 1: Spara projektet
I kontomenyn i navigeringsraden väljer du Spara projekt. Första sparningen skapar projektet och ger det ett id; varje sparning därefter skriver över det lagrade dokumentet.
Gratis-planen tillåter fem sparade projekt. När du når taket säger gränssnittet det rakt ut i stället för att misslyckas tyst, och då raderar du ett gammalt projekt eller uppgraderar. Premium och Pro har inget tak på antalet sparade projekt.
Är du inte inloggad finns det ingenstans att spara, så ett projekt byggt som gäst existerar bara i den webbläsarfliken. Det är det absolut vanligaste sättet att förlora arbete här.
Steg 2: Ta ett namn på northerngo.com
Öppna Mina projekt, klicka på ⋮-menyn på projektkortet och välj Skapa PWA. Trots namnet är det den här dialogen som ger din app en egen webbadress — PWA-delen är det som följer med på köpet.
Skriv namnet du vill ha i fältet Välj PWA-länk. Ändelsen .northerngo.com är fast. Reglerna servern tillämpar:
- endast gemena bokstäver a–z, siffror och bindestreck, 2 till 63 tecken
- namnet får inte börja eller sluta med bindestreck
- en lista med plattformsnamn är reserverad —
www,api,app,admin,shop,support,docs,demooch ett trettiotal till - namnen är unika över alla användare; är det du vill ha upptaget får du ett tydligt fel och ett ledigt förslag i stil med
dittnamn-2
Samma dialog tar emot en app-ikon som du laddar upp som bildfil och som sparas med projektet. Använd en kvadratisk bild, 512×512 pixlar är den praktiska storleken, och håll den under ungefär 700 kB — ikonen lagras tillsammans med projektposten och en för stor fil avvisas. Hur ikoner beter sig på iOS respektive Android går guiden om att skapa en PWA med egen app-ikon igenom.
Det här steget kräver Premium eller Pro. Ett Gratis-projekt kan tekniskt sett hålla ett namn, men servern serverar ingen app på subdomän för ett Gratis-konto — den skickar besökaren vidare till ?app=-länken, vilket är en förvirrande upplevelse att ge en kund. Ta namnet när du är på en betald plan.
Steg 3: Öppna den skarpa länken
Tillbaka på projektkortet öppnar knappen Live din app på den bästa adress den har, och Kopiera lägger samma adress i urklipp. Prioritetsordningen är:
- en egen domän, om en är kopplad — endast Pro, beskrivet i koppla egen domän och SSL
https://dittnamn.northerngo.com, om ett namn är tagethttps://northerngo.com/?app=<projektId>som reservlänk som alltid fungerar
Den tredje länken är inte en sämre version av appen funktionsmässigt. Den är ett genuint annorlunda sätt att köra den, och skillnaden är värd att förstå.
De två sätten en app serveras på
På en subdomän eller egen domän är din app toppdokumentet. Servern sätter ihop HTML:en, injicerar en REST-baserad SDK i <head> så att window.NorthernGoDB och de övriga globalerna finns innan din kod körs, lägger till PWA-taggarna och registrerar en service worker. Domänen serverar dessutom riktiga /manifest.json och /sw.js, vilket är det som gör appen installerbar på en mobils hemskärm och ger den ett stylat skal offline.
På ?app=-länken körs din app i en sandlådad iframe på northerngo.com, och SDK-anropen bryggas ut till föräldrasidan i stället för att göras direkt. Appen fungerar, data sparas, inloggning fungerar. Det du inte får är installerbarhet, en egen service worker eller en adress som ser ut att tillhöra dig.
Det är det praktiska argumentet för subdomänen, och det är värt att säga rakt ut i stället för att linda in: på Gratis är din app fullt fungerande men ligger på en delad adress.
Var Firebase faktiskt kommer in
Ordet Firebase förekommer ofta kring den här plattformen, och det används om tre skilda saker som är lätta att blanda ihop.
Firestore håller projektens metadata: ägare, namn, subdomän, egen domän, ikon, integrationsinställningar och tidsstämplar. Firebase Storage håller den sparade koden som en JSON-fil. Firebase Hosting serverar northerngo.com självt — byggverktyget, marknadssidorna och de förrenderade guiderna.
Din publicerade app serveras av ingen av dem. Den serveras av NorthernGos backend, som läser den sparade koden och renderar den per anrop. Så även om Firebase verkligen ingår i stacken skapas ingen egen Firebase Hosting-sajt åt dig per app, och det finns ingen hostingkonfiguration du kan ändra i. Att vara tydlig med det spelar roll, eftersom det förklarar varför det inte finns någon bygglogg att läsa och ingenting att konfigurera när något går fel.
Vad det här medvetet inte ger dig
- Ingen versionshistorik. Sparning skriver över. Vill du ha en ögonblicksbild av en fungerande version tar du en ZIP-export innan du gör riskabla ändringar; export finns i projektmenyn på de betalda planerna.
- Ingen testmiljö. Det finns ett sparat tillstånd och det är det skarpa. Bygg riskabla ändringar i ett dubblerat projekt.
- Inga egna headers, omdirigeringar eller rutter. Din app är ett dokument på en adress. Klientsidesnavigering inuti dokumentet fungerar; serversidesrutter existerar inte.
- Ingen git-integration. Sanningskällan är det sparade projektet, inte ett kodarkiv. Är det viktigt för dig att utgå från ett repo är den ärliga vägen att exportera koden och hosta den själv, och resonemanget finns i så undviker du inlåsning hos AI-byggare.
- Ingen kontroll över cachningen. Service workern på en publicerad subdomän cachar gränssnittets skal och statiska resurser men aldrig anrop mot backend, medvetet, så att din app aldrig visar gammal data från databasen.
Felsökning
Den skarpa appen visar en gammal version. Något ändrades i editorn men sparades aldrig. Det serverade dokumentet är alltid det senast sparade — gå tillbaka till projektet, spara och ladda om.
En subdomän skickar vidare till northerngo.com. Inget projekt matchar namnet. Antingen togs namnet aldrig, eller så togs det på ett annat projekt. Öppna Skapa PWA på rätt projekt och spara namnet igen.
En subdomän skickar vidare till en ?app=-länk. Projektet tillhör ett Gratis-konto. Servering på subdomän kräver Premium eller Pro; omdirigeringen är reservvägen, inte ett fel.
"Namnet är redan upptaget". Namnen är unika över alla användare på plattformen, inte bara bland dina egna projekt. Ta det föreslagna alternativet eller välj något mer specifikt.
Appen laddas men ingenting sparas. Kontrollera att appen anropar window.NorthernGoDB.save och inte localStorage. På en publicerad domän injiceras SDK:n innan din kod körs, så globalen kommer att finnas; försvinner data ändå vid omladdning lagrar appen den i webbläsaren. Databasguiden går igenom hur du flyttar den.
Vit sida på en subdomän. Nästan alltid ett JavaScript-fel i den sparade koden snarare än ett hostingproblem. Öppna webbläsarens konsol på den skarpa adressen — felet pekar ut raden i det genererade dokumentet.
Vanliga frågor
Måste jag trycka publicera varje gång jag ändrar i min app?
Nej. Servern renderar den version av projektet som just nu är sparad, så det är sparningen som gör en ändring skarp. Det finns inget separat bygg- eller deploysteg, och därmed inte heller något sätt att hålla ett nyare utkast privat medan en äldre version ligger kvar live.
Kan jag publicera en app på gratisplanen?
Ja, men bara på den delade länken northerngo.com/?app=projektId. Ett eget namn på dittnamn.northerngo.com kräver Premium eller Pro. Ett Gratis-projekt som har tagit ett namn skickar ändå vidare besökarna till den delade länken, eftersom servern kontrollerar planen innan den serverar en subdomän.
Var ligger min app egentligen och finns datan inom EU?
Den sparade koden ligger i Firebase Storage med sina metadata i Firestore, och appen serveras av NorthernGos backend snarare än av en egen hostingsajt per app. Applikationsdata som skrivs via SDK:n hamnar i en Supabase-databas i PostgreSQL inom EU. NorthernGo drivs från Sverige och är byggt med EU-datalagring som utgångspunkt.
Kan jag återgå till en tidigare version av min app?
Inte från plattformen. Varje sparning skriver över det lagrade dokumentet, och det finns ingen versionshistorik att återställa från. Editorn har en ångrafunktion inom den pågående sessionen, och på de betalda planerna kan du ta en ZIP-export av en fungerande version innan du gör riskabla ändringar, vilket är det praktiska sättet att spara en ögonblicksbild.
Varför kan folk installera min app från en subdomän men inte från delningslänken?
För att installerbarhet kräver att appen är toppdokumentet på sin egen adress, med eget manifest och egen service worker. En subdomän serverar precis det. Delningslänken kör appen i en sandlådad iframe inuti northerngo.com, så webbläsaren har ingen fristående app att installera.
Bygg det själv
NorthernGo förvandlar en beskrivning i ren text till en fungerande webbapp med databas, inloggning och en live-adress. Lokal AI-generering körs på ditt eget grafikkort, är obegränsad och ingår gratis i alla prisplaner.