Hey fellow FOSS folks!
For past few weeks I’ve been working on a passion project called Openwrite — a minimalist, open-source blogging platform focused on privacy, simplicity, and full user control. It’s built with Flask and released under the AGPL license. Inspired by platforms like WriteFreely, but with a few twists.
What it offers right now:
Multiple blogs per user (or single-blog mode, ideal for self-hosting)
- SQLite & MySQL support
- Image uploads (local or BunnyCDN)
- Markdown editor with live preview
- Custom blog themes (like a 6 now but I upload new regularly)
- Custom CSS per blog
- Gemini support – yes, gemini://openwrite.io works!
- No tracking, hashed IPs only for basic stats
- Dashboard with view statistics (OS, browser, timelines – all for free)
- ActivityPub federation (Follow, Like)
- RSS feeds, optional search engine indexing, and "Discover" section
Oh — and it supports importing posts from XML(wordpress) or CSV.
What makes it different?
I’m trying to build something:
- FOSS-first (no paid plans, no analytics spyware, no nonsense)
- Purely optional in hosting: you can run your own instance or use mine
- Built for people like us — nerds, tinkerers, writers, privacy lovers
Current status
Still in 0.x versions (currently at 0.10.4), but stable and usable. I’d love early feedback, contributors, ideas, testers — anything really. First pull request will make me cry tears of joy.
GitHub: https://github.com/openwriteio/openwrite
Site: https://openwrite.io/
Gemini mirror: gemini://openwrite.io
Thanks for reading — feel free to ask questions, roast my CSS, or suggest features. Let’s keep the open web alive 💜

14 Comments
AmbitiousProcess@piefed.social · 43 pts · 1y
For anyone like me that immediately assumed Gemini meant Google's AI model by the same name, fear not, it's a protocol, not an AI model.
Arghblarg@lemmy.ca · 18 pts · 1y
Yes, and they used the name first, not google. Arseholes.
beyond@linkage.ds8.zone · 2 pts · 1y
Not the first time that's happened: https://github.com/golang/go/issues/9
Psyhackological@lemmy.ml · 6 pts · 1y
Uff...
WhosMansIsThis@lemmy.sdf.org · 7 pts · 1y
Love the Gemini support! Will definitely check this out.
v0idist@szmer.info · 1 pts · 1y
Thanks! Appreciate it
libre_warrior@lemmy.ml · 3 pts · 1y
Markworthy! I love gemini. Im testing it out.
v0idist@szmer.info · 1 pts · 1y
Thank you!
libre_warrior@lemmy.ml · 1 pts · 1y
Seems like the webpage is down right now.
v0idist@szmer.info · 2 pts · 1y
It was, I'm sorry, I was migrating it to another server and something went wrong :) I will try to keep uptime best.
libre_warrior@lemmy.ml · 1 pts · 1y
I'm trying to test the software out on localhost, but I get this message. Are there bugs, or am I setting it up with wrong ip/port/anything?
v0idist@szmer.info · 1 pts · 1y
I think you need to change your .env file to make the domain match vhost you're requesting with your browser. In this case, try changing the domain to 127.0.0.1:8081 in .env
libre_warrior@lemmy.ml · 1 pts · 1y
I tried this, but it didn't work either.
v0idist@szmer.info · 1 pts · 1y
Can you show me your .env file? Cut off secret key and API keys. Feel free to send it on my email: admin@openwrite.io