Skip to main content
Writed
All articles

The AI Journal That Runs Entirely in Your Browser

An AI journal with no server sounds impossible. Here's the technology that makes Writed run a chat model inside a browser tab — and why it matters for your privacy.

Most "AI journals" are a thin app wrapped around a cloud API. You write, your text gets sent to a server, a model there generates a reply, and it comes back. Convenient — but your diary is now someone else's request log.

Writed takes a different route: the AI runs inside your browser tab. No server sees your entries. Here's how that's possible, and why it's worth caring about.

Two models, both on your device

Talking to your journal needs two kinds of AI:

  1. An embedding model turns text into vectors so the app can find relevant entries by meaning, not just keywords. Writed uses bge-small-en (about 33 MB) running via WebAssembly.
  2. A chat model reads the relevant entries and writes an answer. Writed uses Llama 3.2 3B through WebGPU on machines with a capable GPU, and falls back to a smaller Qwen 2.5 1.5B model on CPU-only devices.

Both download once and then run locally. Your browser became capable of this only recently — WebGPU gives web pages access to your graphics hardware, which is what makes a multi-billion-parameter model usable in a tab.

What happens when you ask a question

  1. You type a question in plain English.
  2. Writed embeds the question on your device.
  3. It searches your entries with hybrid retrieval: semantic similarity (vectors) + keyword matching (BM25) + a recency boost + an optional date filter.
  4. The top matching chunks become context for the chat model.
  5. The model answers using only your entries, and shows you which entry and date each answer came from.

This is the same "retrieval-augmented generation" (RAG) pattern that powers serious AI search tools — except the entire pipeline runs on your laptop instead of in a data center.

The one and only network request

Writed is a static website. The single time it talks to the network is your first visit, when the browser downloads the model files from public CDNs (Hugging Face, jsDelivr). Those CDNs see your IP address — exactly like loading any web page — and never see anything you write. After that download is cached, Writed runs fully offline.

You can confirm this yourself: open DevTools → Network, write an entry, and chat with it. No uploads.

Why run AI in the browser at all?

  • Privacy by architecture. There's no server to leak, subpoena, or repurpose your data. It can't happen because the data isn't there.
  • No account, no friction. Open a link and start. Nothing to sign up for.
  • Offline. Once loaded, it works on a plane.
  • Free and verifiable. Writed is open source under MIT — you can read exactly what it does.

The trade-off is hardware. Big models want a real GPU, so Writed is desktop-first; phones get a smaller, slower model. If you journal on a laptop, you get the full experience.

See it for yourself

Open Writed, write something, and ask it a question. The answer is generated on your own machine.

Frequently asked questions

What is WebGPU and why does Writed need it?
WebGPU is a browser API that lets web pages use your computer's graphics hardware. Writed uses it to run a chat model fast enough to be usable. Without WebGPU, Writed falls back to a smaller CPU model.
Which browsers and devices work best?
Recent Chrome and Edge on a desktop or laptop with a GPU give the best experience. CPU-only machines and phones work with a smaller fallback model but run slower.
Does my journal text ever reach a server?
No. The only network request is the one-time download of model files on first visit. Your entries stay in your browser's storage and are processed on-device.