Created by: buckket
Format: plain text, tab-separated, publicly hosted
GitHub: github.com/buckket/twtxt
A decentralised, minimalist microblogging format for self-hosted flat files.
Instead of signing up at a closed microblogging platform, you put status updates in a publicly accessible text file. The URL pointing to that file is your identity. twtxt clients track these files like a feedreader and build a timeline from the files you follow.
No registration. No API keys. No JavaScript. No server-side code required.
A twtxt feed is a plain text file. Each line is a post:
# nick = brennan # url = https://brennan.day/twtxt.txt # avatar = https://brennan.day/assets/images/brennan.jpg # description = Queer Métis author and FOSS web developer from Treaty 7 territory 2026-01-21T10:30:00-07:00 🚧 Testing twtxt setup 2026-01-20T09:15:00-07:00 ☕ Morning coffee and code
The # lines are optional metadata. Each post is:
TIMESTAMP<TAB>content
The TAB character between timestamp and content is mandatory. Timestamps are ISO 8601.
| Protocol | Format | Hosting | Encryption |
|---|---|---|---|
| twtxt | plain text file | any web server | optional (HTTPS) |
| Gemini | gemtext | Gemini server | TLS required |
| Gopher | gophermap | Gopher server | none |
| RSS/Atom | XML | any web server | optional |
twtxt is the most minimal — a static file with no special server requirement.
# Add a feed to twtxt client twtxt follow brennan https://brennan.day/twtxt.txt # Read your timeline twtxt timeline
Or read any twtxt feed directly in a browser or curl:
curl https://brennan.day/twtxt.txt