# General Text — for LLMs and agents This file is generated from the General Text documentation (https://www.generaltext.org/docs) and is the canonical machine-readable guide. Human-readable docs live at https://www.generaltext.org/docs. General Text is a place for plaintext files. People keep workspaces of plain files that sync live across their devices and collaborators. **Apps** are small, single-purpose web frontends that read and write those files: an editor for a format, a viewer, a tool. These developer docs are everything you need to build one. They're split across four pages: this overview and quickstart, then [The window.gt Runtime](/docs/runtime) (the file API your app talks to), [Real-time Collaboration](/docs/collaboration) (the structured-CRDT path, for when you need it), and [Publishing to the Gallery](/docs/publishing). If you are an LLM agent: you can build a complete, working app from these docs. The full guide is also served as one machine-readable file at [`/llms.txt`](https://www.generaltext.org/llms.txt); read it fully, then scaffold. ### The model An app is a **static web frontend** (HTML + JS + CSS, any framework or none). It has **no backend**: it never runs server code, never holds a database, never stores anyone's data. General Text is the backend, providing auth, storage, and real-time sync. Your app runs inside General Text in a sandboxed iframe and talks to files through one global, **`window.gt`**, which the platform injects for you. You don't bundle a client, copy any file, or wire up auth; `window.gt` is just there. You build static files, install them by URL (or paste/drop them), and the user's data lives in their workspace as plain files they own. What this buys you: no auth to build, no database to run, no server bill, no custody of anyone's data, and your app's data is portable plaintext the user (and their other tools, including their AI) can read forever. ### The contract 1. **You define a plaintext file format** (or reuse one: `.md`, `.csv`, `.json`/`.jsonl`, or your own `.myapp`). Files are the contract: anything your app writes, the user can open with anything else. 2. **You build a static frontend** that reads/writes those files via `window.gt`. 3. **You declare a manifest**: a `gt.json` at the root for a multi-file build, or an inline `