Last updated: 2026-07-22
This privacy policy describes how the asciiflow web application ("asciiflow", "the app", "we", "us") handles your information when you use it. asciiflow is a browser-based ASCII diagram editor: it lets you draw, edit, and export ASCII-art diagrams, and optionally save them to your own Google Drive.
The app requests the following Google OAuth scopes when you sign in with Google:
openid, email, profile — to identify you when you sign in and to address you by name in the UI.https://www.googleapis.com/auth/drive.metadata.readonly — to list the ASCII diagrams you have previously saved to your Google Drive so that asciiflow can show them in your diagram list.https://www.googleapis.com/auth/drive.file — to create and then delete a tiny temp file in your own Google Drive as a periodic keepalive. Because this is the drive.file scope, asciiflow can only ever see/touch files it created itself.asciiflow uses incremental authorization: at sign-in
it requests only openid, email, and
profile. The two Drive scopes are requested separately, only
when you explicitly click "Authorize Google Drive access", using
include_granted_scopes=true so your existing grants are
preserved. Drive access is never requested until you choose to enable it.
With the drive.metadata.readonly scope, asciiflow reads
only the metadata (file name, file ID, and last-modified
timestamp) of diagram files that you previously saved through asciiflow in
your own Google Drive. asciiflow does not read the
contents of any Drive file, does not read files you did not create with
asciiflow, and does not read any data outside Google Drive (no Gmail, no
Contacts, no Photos, no Calendar).
With the drive.file scope, asciiflow's background keepalive
worker creates one tiny temp file named
asciiflow-keepalive-<timestamp>.txt in
your own Google Drive every
DRIVE_KEEPALIVE_INTERVAL (default 24 hours) and then
immediately deletes it. The file exists for only a few
seconds. This keeps the Drive API client marked "active" under Google's
inactivity policy.
asciiflow only ever creates and deletes its own temp file. It never
modifies, overwrites, or deletes files it did not create, never reads any
other Drive file, and never writes to any Google Drive account other than
yours. The drive.file scope technically prevents asciiflow
from even seeing files it did not create.
After a successful sign-in, the app stores locally on the server:
asciiflow does not contain analytics, advertising, or third-party tracking code, and it does not share your data with anyone. Diagrams you save are stored in your own Google Drive account under your control, not on this server.
DATA_DIR/tokens.json).0600 permissions and is owned by a non-root user.The stored token is retained for as long as you want to keep using the app with your Google account. You can revoke access at any time by:
DATA_DIR/tokens.json.All communication between your browser, the app, and Google happens over HTTPS. The app listens only on the local loopback interface and is exposed via a TLS-terminating reverse proxy.
Because the app is self-hosted and stores only OAuth tokens, your main controls are revocation (above) and deletion of the local token file. Your diagrams themselves live in your Google Drive and remain fully under your control via myaccount.google.com.
If the requested scopes or storage behavior changes, this page will be updated and the "Last updated" date revised.
This is a self-hosted application. For questions, contact the email
address configured as ALLOWED_EMAILS on your deployment.