asciiflow
asciiflow is a free, browser-based ASCII diagram editor. Its purpose is to let anyone draw, edit, and export ASCII-art diagrams (flowcharts, system diagrams, sequence sketches, network topologies) directly in the browser, with no install or sign-up, and to optionally save those diagrams to your own Google Drive.
┌──────────────────────────────────────────────────────────┐
│ asciiflow — ASCII diagram editor │
└──────────────────────────────────────────────────────────┘
┌──────────┐ ┌──────────┐
│ client │───────▶│ server │
└──────────┘ └──────────┘
│ │
│ https │ drive
▼ ▼
┌──────────┐ ┌──────────┐
│ Google │ │ Drive │
└──────────┘ └──────────┘
Features
Infinite canvas
Pan and zoom across an unbounded grid. Diagrams can be as small as a single box or as large as a system architecture overview.
Freeform draw
Draw boxes, lines, arrows, and freehand ASCII characters. Smart connectors re-route automatically when you move a box.
Resize & move
Drag box edges to resize, drag the body to move. Connected lines stay attached and reflow.
Export to text/HTML
Copy your diagram as plain ASCII text for embedding in code comments, READMEs, or chat, or export as HTML.
Save to Google Drive
Sign in with Google to save diagrams to your Drive and reopen them later from any device.
No install
Runs entirely in the browser. Nothing to download, nothing to install.
About asciiflow — what this app is for
Purpose: asciiflow is a tool for creating and editing ASCII-art diagrams in your browser. You can use it to draw flowcharts, system diagrams, sequence sketches, network topologies, or any other drawing that benefits from being represented as plain text. Because asciiflow stores diagrams as ASCII characters, they can be embedded directly in source code, README files, terminal output, and any other text-based medium.
asciiflow provides an infinite scrollable canvas, box/line drawing tools, freeform character entry, drag-to-resize and drag-to-move, undo and redo, and one-click export to plain text or HTML. When you sign in with Google, asciiflow can also list the diagrams you previously saved in your own Google Drive so you can reopen them from any device.
How asciiflow uses your Google Drive
To enable the Drive integration, asciiflow requests two Google Drive scopes:
drive.metadata.readonly— What asciiflow reads: the file names, IDs, and modification timestamps of ASCII diagram files you have saved in your own Google Drive, so asciiflow can list them in your diagram picker. asciiflow never reads file contents or files you did not create with it.drive.file— What asciiflow writes: a background worker creates a tiny temp file (asciiflow-keepalive-<timestamp>.txt) in your Drive every 24h and immediately deletes it, so the Drive API client stays active. Only files asciiflow itself created are ever touched — your other Drive files are never read, modified, or deleted. Thedrive.filescope technically prevents asciiflow from seeing files it did not create.- What asciiflow does NOT do: the contents of any other Drive file, files you did not create with asciiflow, your contacts, photos, emails, or any data outside your Drive. asciiflow never modifies, overwrites, or deletes files it did not create, and never writes to anyone else's Drive.
- Token handling: asciiflow stores the OAuth token returned by Google locally on the server, encrypted with AES-256-GCM, so it can keep listing your diagrams without prompting you to sign in on every visit. The token never leaves the server except when talking directly to Google over HTTPS.
Full details are in the privacy policy and the requested scopes reference.
Why asciiflow requests these scopes
When you sign in with Google, asciiflow requests the minimum scopes needed to identify you and to read/write your own diagrams in Google Drive. Here is exactly why each one is required and what it lets asciiflow do — and, just as importantly, what it does not let asciiflow do.
1. openid — Sign you in
Why: to authenticate you with a signed ID token from Google during the Sign-in with Google flow, so asciiflow knows who you are without ever seeing your password.
What it lets asciiflow do: verify your identity through Google's OpenID Connect endpoint, once, at sign-in time.
What it does NOT do: read your Gmail, see your contacts, or access any Google data beyond confirming your identity.
2. email — Match your account to the allowlist
Why: asciiflow is a single-user, self-hosted app
that only lets a configured allowlist of email addresses sign in (see
ALLOWED_EMAILS). The email scope returns your
verified email address so asciiflow can check it against that list.
What it lets asciiflow do: read your email address from Google's userinfo endpoint and store it on the server so it can greet you and keep you signed in across sessions.
What it does NOT do: read your email messages, send mail on your behalf, or share your address with anyone. Your email is never logged in plaintext — only a short, non-reversible fingerprint.
3. profile — Greet you by name
Why: to display your name and profile picture in the UI after you sign in, so the app feels personalized instead of showing a bare email address.
What it lets asciiflow do: read your display name and a profile picture URL from your Google profile.
What it does NOT do: read your profile posts, review your Google activity, or share your profile data. The profile data is used only for display and is not stored beyond your session.
4. drive.metadata.readonly — List your saved diagrams
Why: so asciiflow can show you the ASCII diagrams you previously saved to your own Google Drive and reopen them in the editor from any device.
What it lets asciiflow do: read the file name, file ID, and last-modified time of diagram files you saved through asciiflow in your own Drive.
What it does NOT do: read the contents of any Drive file, read files you did not create with asciiflow, or read anything outside Google Drive (no Gmail, no Contacts, no Photos, no Calendar).
5. drive.file — Keep the Drive client active (create + delete)
Why: Google deletes OAuth clients that have been
inactive for 5+ months. A background worker creates a tiny temp file
named asciiflow-keepalive-<timestamp>.txt in your Drive
every DRIVE_KEEPALIVE_INTERVAL (default 24h) and
immediately deletes it. This marks the Drive API client
"active" so Google does not delete your OAuth client.
What it lets asciiflow do: create a temp file in your Drive and then delete that same file by its ID, a few seconds later.
What it does NOT do: read, modify, overwrite, or
delete any other file. The drive.file scope technically
restricts asciiflow to only the files it created itself — your other
Drive files are invisible to it. If a delete ever fails, the file id is
logged so it can be removed manually; the temp file is never the file
you saved through asciiflow, and it is always visible only to
asciiflow.
The full per-scope breakdown, including the request method and storage behavior, is on the requested scopes page.
How it works
- Open the editor — the canvas loads in your browser, no install required.
- Draw using the box, line, arrow, and freeform tools on the toolbar.
- Sign in with Google to enable saving diagrams to your Google Drive.
- Export your diagram as plain text or HTML whenever you like.
Privacy & data
asciiflow requests only the minimum Google scopes needed for the Drive integration to function. asciiflow reads only the metadata of diagram files you saved in your own Drive, and writes only the diagrams you create through asciiflow — never to files or Drives you do not own. Diagrams saved to Drive stay in your own Drive account under your control. See the privacy policy and requested scopes for full details.
Your account
You are browsing the public home page — no account required.
To save diagrams to Google Drive, sign in with Google. Sign-in requests only the basic scopes (openid, email, profile); Drive access is requested separately afterwards using incremental authorization.