asiiflow

asiiflow — draw infinite ASCII diagrams in your browser

asiiflow is a free, browser-based editor for drawing, editing, and sharing ASCII-art diagrams on an infinite canvas. With asiiflow you can freeform-draw, resize boxes, snap to a character grid, and export straight to plain text or HTML.

Single-user · No analytics · No advertising · No third-party tracking

Purpose of asiiflow: asiiflow lets you create and store ASCII diagrams (flowcharts, system diagrams, sequence sketches, network topologies) entirely in your browser, and optionally save them to your own Google Drive so you can reopen them from any device.
┌──────────────────────────────────────────────────────────┐
│  asiiflow — 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 asiiflow — what this app is for

The purpose of asiiflow is to give you a fast, install-free way to draw ASCII diagrams — flowcharts, system diagrams, sequence sketches, network topologies, or any other drawing that benefits from being represented as plain text. Because asiiflow stores diagrams as ASCII characters, they can be embedded in source code, README files, terminal output, and any other text-based medium.

asiiflow 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, asiiflow can also list the diagrams you previously saved in your own Google Drive so you can reopen them from any device.

How asiiflow uses your Google Drive

To enable the Drive integration, asiiflow requests two Google Drive scopes:

Full details are in the privacy policy and the requested scopes reference.

Why asiiflow requests these scopes

When you sign in with Google, asiiflow 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 asiiflow do — and, just as importantly, what it does not let asiiflow 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 asiiflow knows who you are without ever seeing your password.

What it lets asiiflow 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: asiiflow 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 asiiflow can check it against that list.

What it lets asiiflow 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 asiiflow 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 asiiflow 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 asiiflow do: read the file name, file ID, and last-modified time of diagram files you saved through asiiflow in your own Drive.

What it does NOT do: read the contents of any Drive file, read files you did not create with asiiflow, 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 asiiflow-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 asiiflow 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 asiiflow 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 asiiflow, and it is always visible only to asiiflow.

The full per-scope breakdown, including the request method and storage behavior, is on the requested scopes page.

How it works

Privacy & data

asiiflow requests only the minimum Google scopes needed for the Drive integration to function. asiiflow reads only the metadata of diagram files you saved in your own Drive, and writes only the diagrams you create through asiiflow — 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 is optional and only needed for the Drive save feature.