Running a standalone app
A standalone app is a self-contained ZIP you can run on a laptop, an office PC or your own server. It arrives ready to go: a compiled web interface, a small program to run it, and the app's data in one local SQLite file. The person running it (the standalone app operator) builds nothing — no git, no npm. The folder's README.md explains every setting, and manifest.json records when the web interface it carries was built — the running app reports the same stamp at /api/health, handy when you re-export into the same folder.
Quick start — unzip the file, then in that folder:
python -m pip install -r requirements.txtpython run.py— then openhttp://127.0.0.1:8000in your browser.- Need a different address or port?
PORT=9000 HOST=0.0.0.0 python run.py.
Who can sign in. A standalone app never registers new accounts, so it stays exactly as private as the day you published it. Everyone who had access at export time is already in, and signs in with the same email and password. Password reset isn't available in a standalone app — use Change password after signing in.
.env as SHEETAPP_APP_FIELD_KEY before you start the app. Or tick the option on the export confirmation to have it written into .env for you: convenient, but then anyone holding the zip can read those fields. Without the key the app runs, and those fields stay unreadable.run.py: records in a local app.db file, attachments in the data/ folder. Copy those two somewhere safe on a schedule and you can always recover your records.