writefreely is a free, open source social networking project written in Go and released under AGPL-3.0. It has 5,250 GitHub stars, 398 forks and 108 open issues, and was last pushed 13 days ago. On this registry it ranks #11 of 44 tracked projects in Social Networking, with 5 head-to-head comparisons available.

What is writefreely?

What it is

WriteFreely is a clean, minimalist publishing platform made for writers, released under the AGPL-3.0 license and written in Go. It belongs to the fediverse: an ecosystem of federated publishing and social software that speaks ActivityPub, the same protocol used by Plume and other ActivityPub-powered applications. An instance can be a single writer's blog, a shared internal knowledge base inside an organization, or a community built around the shared act of writing.

The concrete problem it solves is ownership and portability of a writing space. Instead of renting a hosted blog, an organization or individual runs the software itself, keeps the data on its own infrastructure, and still participates in a wider network — connecting with other communities, bringing members on board from existing platforms through OAuth 2.0 support, and federating outward rather than publishing into a silo. Privacy is treated as the default posture: the software collects minimal data and never publicizes more than a writer consents to, and a single account can hold multiple blogs for different pen names or purposes without publicly revealing how they relate.

Key capabilities

  • Distraction-free writing environment built on a plain, auto-saving editor.
  • ActivityPub federation, so instances connect with other WriteFreely communities, Plume, and other ActivityPub-powered software.
  • OAuth 2.0 support for bringing members on board from existing platforms.
  • Hashtags for categorizing articles, plus pinning normal posts to create static pages on a blog.
  • Draft posts and publishing to multiple blogs from one account.
  • Localization of blog elements in 20+ languages, with first-class support for non-Latin and right-to-left scripts.
  • Minimal data collection, with no publication of information beyond what a writer consents to.

Who uses it and how

  • Individual writers start a blog on a self-hosted instance and publish directly from the auto-saving editor.
  • Organizations share knowledge internally, writing together either publicly or privately.
  • Communities form around the shared act of writing, and federate with other instances running WriteFreely, Plume, or other ActivityPub software.
  • Writers maintain several blogs under one account for different pen names or purposes, without publicly revealing that the blogs are associated.
  • Administrators bring existing audiences over from other platforms using OAuth 2.0 support.

Getting started

WriteFreely deploys as a static binary on any platform and architecture that Go supports, using built-in SQLite support or a MySQL or MariaDB database. Pre-built binaries are available for common platforms, alongside packages in the Arch User Repository and the Nanos Repository, a Docker guide, and Write.as, a hosted service from the team behind WriteFreely offering fully managed installation, backup, upgrades, and maintenance.

When to use it — and when not to

Choose WriteFreely when federation, self-hosting, and a writing-first interface matter more than a feature-heavy site builder. A self-hoster must operate the deployment itself — a static binary plus a SQLite, MySQL, or MariaDB database — or hand that work to the hosted Write.as service. The project is marked beta in its topic list, and its open issue count of 108 on a repository nine years old suggests an actively maintained but not fully settled codebase.

project readme (upstream, from github) — read inline

 

WriteFreely


Latest release Build container image, publish as GitHub-package

 

WriteFreely is a clean, minimalist publishing platform made for writers. Start a blog, share knowledge within your organization, or build a community around the shared act of writing.

Screenshot of the Reader view of a WriteFreely instance, pen.writefree.ly.

Try the writing experience

Find an instance

Features

Made for writing

Built on a plain, auto-saving editor, WriteFreely gives you a distraction-free writing environment. Once published, your words are front and center, and easy to read.

A connected community

Start writing together, publicly or privately. Connect with other communities, whether running WriteFreely, Plume, or other ActivityPub-powered software. And bring members on board from your existing platforms, thanks to our OAuth 2.0 support.

Intuitive organization

Categorize articles with hashtags, and create static pages from normal posts by pinning them to your blog. Create draft posts and publish to multiple blogs from one account.

International

Blog elements are localized in 20+ languages, and WriteFreely includes first-class support for non-Latin and right-to-left (RTL) script languages.

Private by default

WriteFreely collects minimal data, and never publicizes more than a writer consents to. Writers can seamlessly create multiple blogs from a single account for different pen names or purposes without publicly revealing their association.

Write.as

The quickest way to deploy WriteFreely is with Write.as, a hosted service from the team behind WriteFreely. You'll get fully-managed installation, backup, upgrades, and maintenance — and directly fund our free software work ❤️

Learn more on Write.as.

Quick start

WriteFreely deploys as a static binary on any platform and architecture that Go supports. Just use our built-in SQLite support, or add a MySQL or MariaDB database, and you'll be up and running!

For common platforms, start with our pre-built binaries and head over to our installation guide to get started.

Packages

You can also find WriteFreely in these package repositories, thanks to our wonderful community!

Documentation

Read our full documentation on WriteFreely.org —️ and help us improve by contributing to the writefreely/documentation repo.

Development

Start hacking on WriteFreely with our developer setup guide. For Docker support, see our Docker guide.

Contributing

We gladly welcome contributions to WriteFreely, whether in the form of code, bug reports, feature requests, translations, or documentation improvements.

Before contributing anything, please read our Contributing Guide. It describes the correct channels for submitting contributions and any potential requirements.

License

Copyright © 2018-2026 Musing Studio LLC and contributing authors. Licensed under the AGPL.

Frequently asked questions

Is writefreely free to use?

writefreely is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does writefreely do?

A clean, Markdown-based publishing platform made for writers. Write together and build a community.

What is writefreely written in?

writefreely is primarily written in Go. Its source is publicly available at https://github.com/writefreely/writefreely, and it has 5,250 GitHub stars.