Commando Functie
c init Google-account en nieuw project koppelen
c status Koppeling en bestanden controleren
c push Bestanden handmatig uploaden
c watch Automatisch uploaden bij wijzigingen
c backup Online broncode lokaal veiligstellen
c test Lokale tests uitvoeren
c deploy-test Een TEST-versie publiceren
c open Apps Script-editor openen
Pak ZIP uit naar bijvoorbeeld C:\PadelTrainerOS.
Installeer Node.js 22+ en open daarna een nieuw PowerShell-venster.
Zet de Google Apps Script API aan: https://script.google.com/home/usersettings.
Open PowerShell en voer in:
cd C:\PadelTrainerOS
node --version
npm install -g @google/clasp
clasp.cmd --version
clasp.cmd login
.\c.cmd init
init vraagt het échte Script-ID uit Apps Script > Projectinstellingen. Het controleert het doel, maakt een back-up van de ONLINE projectbestanden onder backups/, en maakt pas daarna .clasp.json met rootDir=src. Als de back-up mislukt, wordt niet gekoppeld en niets geüpload.
Controleer en upload eenmaal:
.\c.cmd status
.\c.cmd test
.\c.cmd push
Laat wijzigingen automatisch uploaden (terminal open laten):
.\c.cmd watch
Open src\Code.gs en src\Index.html met VS Code of een andere editor. Ctrl+S leidt bij actieve watch tot een automatische clasp push. Stoppen: Ctrl+C. Let op: push vervangt de hele online projectinhoud; niet naast de lokale code ook in de Google-editor blijven werken.
Optioneel: echte PowerShell-snelkoppeling c
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\install-alias.ps1
Open een nieuw PowerShell-venster, daarna werken de verkorte commando's: c status, c push, c watch, c open (mits je PowerShell-profiel geladen wordt). Je kunt altijd ./c.cmd gebruiken als je profiel niet geladen wordt.
Installeer Node.js >=22, zet Google Apps Script API aan en installeer clasp:
npm install -g @google/clasp
clasp login
cd ~/PadelTrainerOS
./c.sh init
./c.sh status
./c.sh push
./c.sh watch
Voor de commando's c in deze terminal kun je alias c="$PWD/c.sh" gebruiken, of deze alias toevoegen aan ~/.bashrc.
Na push: open met ./c.cmd open (Windows) of ./c.sh open (Linux). Voer in de Google Apps Script-editor één keer setupProject_() en healthCheck_() uit, inclusief het geven van Google Sheets- en MailApp-machtigingen. Controleer healthCheck_() in het logboek: "ok":true en "missingSheets":[].
Maak dan via Apps Script Implementeren > Nieuwe implementatie > Web-app een TEST-implementatie, met Uitvoeren als: ikzelf en Toegang: alleen ikzelf. Of maak na de eerste editor-autorisatie via de terminal een TEST-deployment met c deploy-test. Controleer bij CLI-deployment altijd de werkelijke toegang in Implementaties beheren, want de CLI kan beperkingen hebben bij het instellen van toegang. Kopieer de unieke /exec-URL en test met padelstijn@gmail.com.
c deploy-test gebeurt niet automatisch met de watcher. Als je bestaande /exec-URL wilt behouden, gebruik c deploy-test -DeploymentId <deployment-ID> op Windows of ./c.sh deploy-test <deployment-ID> op Linux; verifieer eerst het doel-ID in Implementaties beheren.
PadelTrainerOS/
src/
Code.gs <- backend
Index.html <- webapp / inloggen
appsscript.json <- manifest (TEST: MYSELF)
tests/
test_backend.cjs
test_frontend.cjs
backups/ <- online backups, wordt niet geupload
c.cmd <- Windows launcher
c.ps1 <- PowerShell commandos
c.sh <- Linux / ChromeOS / macOS
install-alias.ps1 <- optionele `c` snelkoppeling
.claspignore
.gitignore
.clasp.json <- door init gegenereerd, nooit blind kopieren
404 / Not found tijdens init: controleer de Google-account van clasp login, kopieer het Script-ID opnieuw. Er wordt niet gepusht.
Script API not enabled: zet https://script.google.com/home/usersettings aan en log opnieuw in.
Unauthorized: clasp login opnieuw, juiste account.
ENOENT .clasp.json: eerst init uitvoeren.
Script ID mismatch: controleer .clasp.json en voer géén push uit.
clasp.ps1 cannot be loaded: gebruik clasp.cmd of het meegeleverde c.cmd op Windows, geen permanente verlaging van PowerShell-beveiliging nodig.
Login werkt niet: eerst in editor rechten autoriseren, mail/spam controleren, exacte /exec-URL en mailaccount nakijken.
clasp run heeft extra OAuth/API-Executable-configuratie nodig. Setupfuncties daarom voorlopig in de editor starten.
Privacy: gebruik fictieve spelers tot de toegangscontrole, het sessiebeheer, e-mailbeveiliging en AVG-mogelijkheden echt getest zijn. Deel geen .clasprc.json, inlogcodes of toegangstokens.
Documentatie: https://github.com/google/clasp en https://developers.google.com/apps-script/guides/clasp