Grunnleggende begreper
De fem begrepene som bærer alt i Keplin — apper, skjermer, datamodell, versjoner og publisering — og de to gruppene av brukere.
Før du trykker på en eneste knapp, er det verdt å feste et halvt dusin ideer. Alt annet på plattformen — hver meny, hvert panel, hver avgjørelse du kommer til å ta — hviler på disse begrepene. Denne siden definerer dem én gang, i ro og mak; kapitlene som følger, går ut fra at du kjenner dem.

Appen — enheten som holder alt sammen
En app er en komplett og selvstendig applikasjon: skjermene, datamodellen, API-ene, skriptene, rapportene, innstillingene og brukerne hører sammen og reiser sammen. Hver app har:
| Egenskap | Hva det er |
|---|---|
| Navn | Slik appen vises i listen og i arbeidsområdet. F.eks.: Kundehåndtering. |
| Slug | Kortformen av navnet, utledet automatisk, som inngår i adressene. F.eks.: gestao-clientes. |
| Ikon | Symbolet til appen i sidefeltet og i listen. |
| Beskrivelse | En fri setning, synlig i toppen av apptreet. |
At appen er selvstendig, har to praktiske konsekvenser:
- En app kan eksporteres som en
.keplinapp-fil og importeres i en annen installasjon — den tar alt med seg. - Å slette en app sletter hele verdenen dens (design, data, filer) uten å røre de andre appene eller de eksterne databasene den koblet seg til.
Nota
Listen over apper du ser i sidefeltet, er ikke den samme for alle: hver konto ser bare de appene den har tilgang til. Utenfor dem dukker ikke appen opp i listen, og den åpnes heller ikke via en lenke.
Skjermer — sidene i applikasjonen
En skjerm er en side i den ferdige appen, tegnet i en visuell editor: du drar widgets (tabeller, skjemaer, diagrammer, kalendere, …) inn på et lerret, kobler dem til data og bestemmer hva som skjer ved hvert klikk. Hver skjerm har en rute — stien i adressen til appen — og kan ta imot parametere (for eksempel nummeret på kunden som skal vises i et kort).
Tre typer skjerm fortjener sitt eget navn:
- Vanlige skjermer — de du oppretter og organiserer fritt i treet.
- Systemskjermer — de finnes i alle apper fra første sekund: Login, Tilbakestill passord og Registrering. Utseendet redigerer du i samme editor, men ruten og tilgangen er faste.
- Offentlige skjermer — leveres uten innlogget økt, til sider som hvem som helst kan se. De kan bare lese data fra API-er som er merket som offentlige.
Limet mellom skjermene er Navigasjon: menyen i appen (topplinje eller sidefelt), med elementer, undermenyer og snarveier, tegnet i sin egen editor.
Datamodellen
Datamodellen er kartet over entitetene i appen — tabeller, felter, relasjoner og enums — bygget oppå datakildene (databasene appen kobler seg til). Du importerer tabellene som betyr noe, inn i modellen, gir dem vennlige navn, og fra da av snakker resten av plattformen modellens språk: tabell-API-ene genererer komplette operasjoner ut fra den, skjermene velger felter etter det vennlige navnet, og enumene mater listene med valg.
Det avgjørende poenget: modellen beskriver, den dupliserer ikke. Dataene fortsetter å bo i databasene; modellen er laget som gjør dem brukbare for skjermene og API-ene uten at du skriver den samme logikken to ganger.
Versjoner — å jobbe uten frykt
Hver app har versjoner, og den første heter alltid main. En versjon er en komplett kopi av designet og av dataene i appen på det tidspunktet — å lage versjonen «2.0» ut fra main gir deg en gren der du kan rote med alt uten å røre det som er i bruk.

Det som er verdt å huske:
- Arbeidsversjonen er din. Hver person velger hvilken versjon hen jobber i; å bytte versjon endrer ikke versjonen til noen andre.
- Versjoner deler ikke data. En ny versjon fødes med dataene kopiert fra opphavet; fra da av lever hver av dem sitt eget liv.
- Hver versjon har historikk. Alle lagringer blir registrert, med to måter å gå tilbake på: Tilbakestill appen til denne tilstanden (tar alt tilbake til et gitt øyeblikk) og Reverser denne endringen (angrer én bestemt lagring). Ingen av dem skriver om historien — å angre er alltid et nytt steg i loggen.
- Du kan hente elementer mellom versjoner — en ferdig skjerm i «2.0» kan hentes over til main uten at resten følger med.
Publisering — hvilken versjon hver adresse leverer
Å publisere er ikke en knapp som «setter i drift» — det er en kobling:
hver adresse (vert) leverer ÉN versjon av appen. I seksjonen
Publisering i innstillingene til appen kobler du en vert (f.eks.
crm.bedrift.no) til en versjon; den som besøker den adressen, ser den
versjonen, og bare den.

Så lenge du ikke har publisert noen vert, svarer appen likevel — på den
interne adressen /app/<slug> (f.eks. /app/gestao-clientes), med
arbeidsversjonen. Det er det naturlige stedet å prøve seg fram mens du
bygger.
Dica
Denne modellen gir deg miljøer gratis: main publisert på
produksjonsadressen, «2.0» på en testadresse, og din egen arbeidsversjon
på /app/<slug> — tre publikum, tre versjoner, samme app.
To grupper av brukere
Det finnes to måter å være i Keplin på, med atskilte kontoer og atskilte dører:
| De som bygger | De som bruker | |
|---|---|---|
| Kommer inn via | Innloggingssiden til plattformen | Adressen til den publiserte appen (eller /app/<slug>) |
| Ser | Arbeidsområdet: treet, editorene, versjonene | Skjermene i den ferdige appen — og ingenting annet |
| Kontoen administreres i | Brukere (global meny, administratorer) | Brukere av appen, i innstillingene til hver app |
| Profiler | admin (alt, i alle apper) og developer (bare de tildelte appene) | De du selv definerer under Tillatelser i appen |

Appbrukerne vet ikke engang at Keplin finnes: innloggingen, registreringen og passordgjenopprettingen de ser, er systemskjermene til appen, med temaet og språket til appen. Det skillet går igjen overalt — og det er derfor innstillingene til hver app (tema, oversettelser, kontoer, tillatelser) reiser med den når du eksporterer den.
Nota
Gjennom hele denne dokumentasjonen viser «bruker» uten nærmere presisering til den som bygger. Når vi snakker om den som bruker den ferdige appen, sier vi alltid appbrukere.