openwrite is a minimalist blogging platform built for writing freely, hosting independently, and publishing without noise.
Features
- Multiple blogs per user(limit defined in .env)
- Single-blog mode
- Supports sqlite and mysql databases
- Upload images to local storage or bunny cdn
- Drafts
- Simple markdown editor in posting
- Discover section
- Privacy:
- Set if blog should be indexed in search engines
- Set if post should be listed in "Discover" section
- Set if username should appear in post page (anonymous posts)
- Lightweight
- No tracking, only data collected is anonymized(hashed) IP for post view counting and likes
- Custom CSS per blog
- Federation using ActivityPub protocol
- Likes system
- Posts importing from xml/csv
- Blog themes
- Gemini protocol
- Statistics per post
- Multilanguage (currently English and Polish)
- Custom favicon per blog
- Subpages per blog
- Valkey support
- Post tags, filtering
- Optional comments per post
- Auto save during typing
Installation
- To install openwrite, clone it with
pip:
pip install openwrite
- Then run:
openwrite init
- Answer few questions about your instance to generate .env and create all necessary directories.
- Run:
openwrite run
to run it in foreground or:
openwrite run -d
to run it in background.
- Default user is
adminwith passwordopenwrite. You can (and should!) change it in your dashboard. Enjoy!
Docker
Docker image is still being prepared. Stay tuned!
Metadata
Release files for openwrite 0.16.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openwrite-0.16.1.tar.gz | 1.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openwrite-0.16.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.7 MB
Release files / openwrite-0.16.1.tar.gz
| Download URL | openwrite-0.16.1.tar.gz |
|---|---|
| Size | 1.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c4e0d6027b963b99af5c38d9bec7d2de6efd1c3a61141ac69ab3a25bd7c897b
|
|
BLAKE2b-256 checksum How to use checksums |
ce0666b929af859aedc7829bc7a51cfd78ad47c31890f73936fa0faff6d8cb03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / openwrite-0.16.1-py3-none-any.whl
| Download URL | openwrite-0.16.1-py3-none-any.whl |
|---|---|
| Size | 1.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5f8747ab4e40325fda306e156852009833dddd1e2a3eb6a15be9edde5cba4085
|
|
BLAKE2b-256 checksum How to use checksums |
0fde4149f99bc376b123e46e767dbc63025718555886d9f05b2ca3786ca77b55
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|