Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
Program, gruppechat og veibeskrivelse for klasseturen.
Translation pending
LifestyleJavaScript · HTMLGitHub @TourFlowUBOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Program, gruppechat og veibeskrivelse for klasseturer. PWA uten byggesteg.
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Program, gruppechat og veibeskrivelse for klasseturer. Nettside som kan legges til på hjemskjermen (PWA) og virker uten nett. Ingen byggesteg — rene statiske filer på GitHub Pages, med Supabase som database. © 2026 TourFlow UB. Alle rettigheter forbeholdt — se LICENSE. Koden ligger åpent fordi en nettside må sende koden sin til alle som besøker den. Det er ikke det samme som at den er fri å bruke.Read the full README ↗
Program, gruppechat og veibeskrivelse for klasseturer. Nettside som kan legges til på hjemskjermen (PWA) og virker uten nett. Ingen byggesteg — rene statiske filer på GitHub Pages, med Supabase som database.
© 2026 TourFlow UB. Alle rettigheter forbeholdt — se LICENSE. Koden ligger åpent fordi en nettside må sende koden sin til alle som besøker den. Det er ikke det samme som at den er fri å bruke.
Appen trenger et Supabase-prosjekt. Gratisplanen holder godt for utprøving.
schema.sql fra det private repoet
TourFlowUB/tourflow-supabase og kjør. Den lager tabeller, regler for hvem som får lese og skrive, og funksjonene
join_trip og create_trip.js/config.js. Begge finnes under
Project Settings → API:
supabaseUrl — Project URLsupabaseAnonKey — nøkkelen merket anon publicAnon-nøkkelen er laget for å ligge åpent i en nettside. Det er reglene i databasen som
bestemmer hva noen får lese og skrive, ikke nøkkelen. service_role-nøkkelen skal aldri
inn i dette repoet — den går utenom alle regler.
Service workers krever http://, ikke file://:
python -m http.server 8080
Settings → Pages → Source: Deploy from a branch, branch main, mappe / (root).
Alle stier er relative, så appen virker like godt i en undermappe som på eget domene.
| Fil | Ansvar |
|---|---|
index.html | Skjelettet: oppstart, join-skjerm, app-skall, ark |
styles.css | Alt av utseende, lys og mørk variant |
js/config.js | Hvilket Supabase-prosjekt appen snakker med |
js/api.js | All kontakt med databasen. Ingen andre filer snakker med Supabase |
js/parse.js | Melding → møtested, dato, klokkeslett |
js/templates.js | Ferdige turer for «lag eksempeltur» |
js/ui.js | Skjermer, navigasjon, hendelser |
sw.js | Offline-cache og varsler. Bump BUILD sammen med ?v= i index.html |
Databaseoppsettet og serverfunksjonene ligger i et eget, privat repo: TourFlowUB/tourflow-supabase. Denne siden må ligge åpent for at GitHub Pages skal virke — det må ikke serverdelen.
Reglene ligger i databasen, ikke i appen. En bruker som omgår appen og snakker direkte med API-et møter de samme reglene.
join_trip(), som er den eneste veien inn.author_id må være din egen bruker. Du kan slette
dine egne; reiseleder kan slette alle.Appen ligger i offline-lageret på folks telefoner, og nettleseren har sitt eget mellomlager i tillegg. Begge må brytes, ellers ser folk den gamle versjonen i timevis.
Bump derfor to tall til samme verdi for hver utrulling:
?v= på alle <script> og <link> i index.htmlconst BUILD øverst i sw.jsNye filadresser går utenom begge lagrene. Service workeren henter dessuten siden ferskt ved
hver navigasjon, og index.html laster seg selv på nytt én gang når en ny versjon tar over.