Skip to content

Repository files navigation

BlobWare

You hand it shapeless information. It decides how to keep it, how to relate it, and what it should look like when you ask for it back.

A Blob is a folder of plain text. A model has full write access to it and sees all of it on every message. There is no schema, no database, and no screen anybody designed in advance.

Read the project page → The argument, with the message loop and a working panel running in the page.

you: I have a shoe shop, I charge 4500 an hour
→    rules/prices.md created  ·  data/appointments.csv created

you: Marta came in, two resoles
→    data/appointments.csv +1 line

you: show me the week
→    [a chart and a table appear beside the chat]

Run it

Double-click BlobWare.bat. It finds your Python, installs what it needs the first time, and opens a tab at http://127.0.0.1:8756.

Or, from a terminal:

pip install -r requirements.txt
python run.py

The first run asks for an API key, then for a Blob. Tell the Blob what it is for — it opens the conversation itself.

Three providers. Anthropic, Google Gemini (free tier), or NVIDIA NIM (eighty-odd open models behind one key) — pick one in Settings and the app is otherwise identical. Anything else speaking either wire goes in as a base URL. Gemini is the way to try this without spending anything; get a key at aistudio.google.com/apikey and start on gemini-2.5-flash. The model box takes any id, so a newer one works the day it ships.

Python 3.11+. Windows-first, but nothing in it is Windows-only.

python run.py --port 9000    if something else has the port
python run.py --no-open      do not launch a browser

What you get

A folder you own. CSV, JSON, Markdown. Open it in Excel, back it up, take it elsewhere. Nothing is in a format this project invented.

An undo. Every message is a commit. If a reply mangles something, go back to before the message. You never have to know it is git.

Panels, not screens. When a table or a chart says it better than a sentence, the model writes one and it opens beside the chat. They read the files live, so they stay right; most get thrown away.


What it is not

Multi-user. An accounting system. Something that works without an API. A place for anything you would not send to a model — the whole Blob goes up on every message.


Reading

  • The project page — the argument, with the message loop and a real artifact running in the page. One HTML file, no build, no CDN. Publish it by turning on GitHub Pages for /docs.
  • BLOBWARE.md — what it is for and why it is built this way
  • ARCHITECTURE.md — how it works
  • V1.md — what is in this version, and what is missing

Test it without spending anything

python tests/loop.py

Runs the entire message loop against a scripted model. tests/panels.py and tests/gemini.py cover the artifact system and the Gemini backend the same way.


License

MIT. Fork it, gut it, disagree with it.

About

You hand it shapeless information; it decides how to keep it. A folder of plain text, a model with full write access, no schema — and an undo instead of a guarantee.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages