Skip to content


Choose a tag to compare
@thebaer thebaer released this 22 Apr 19:08
· 645 commits to develop since this release

write freely


Major Features

ActivityPub Mentions (T627)

Enable more interaction with your posts by mentioning users on Mastodon, Pleroma, and other ActivityPub platforms! Users on instances with federation enabled can now insert @handle@their.instance to mention someone. You might use this to write a long response to someone in the fediverse, or even mention your own microblogging account, so that replies to your blog post also notify you there, where you can continue the conversation.

New Admin Dashboard (T694)

We've redesigned the admin dashboard to be a little easier to navigate, and generally more user friendly. It now includes an overview of stats for your instance, dedicated pages for app settings and monitoring, and more details on what each configuration option does. We've also made it easier for admins to get to the "Invite people" page.

OAuth 2.0 Support (#225)

Now you can authenticate with your WriteFreely instance via OAuth! This is perfect for WriteFreely communities that are set up to accompany other platforms. We support three providers so far: GitLab, Slack, and

Reader Filter Updates (#269)

Now the Reader will show the most recent 250 public posts, instead of only the last three months of public posts. This should be much more fitting for most WriteFreely instances.

Plain Text Import

Now you can import plain text files to publish them as posts on WriteFreely.

User-Facing Changes / Fixes

  • Show dates on blog posts (T669, #276)
  • Show post publish dates in local time (T670)
  • Fix HTML entities in Draft descriptions (#248)
  • Add Drafts explanation (#248)
  • Fix post deletion on Pleroma (#233)
  • Make user management + Reader pages consistent in their design (#262)
  • Fix image metadata extraction (#266)
  • Add syntax highlighting aliases: js, jsx, html (#270)
  • Lightly style tables in posts (#194)
  • Send users to Login page by default on private instances (#274)
  • Fix pagination on last page of blogs using "Novel" display format (#272)
  • Show 503 Service Unavailable page when server under high load (#284)
  • Remove extraneous @context fields to fix Friendica federation (#299)

Minor Changes

  • Require authentication for accessing editor (#245, #255)
  • Fix 500 on invite links with invalid characters (#250)
  • Tell search engines not to index invite URLs (#268)
  • Hide Reader footer link when unauthenticated on private instances (#274)

Admin-Facing Changes

  • Support Varnish use on ActivityPub endpoints (#180)
  • Fix automatic certificates (#228)
  • Automatically check for WriteFreely updates (T572) -- enable with update_checks = true in config
  • Support account deletion via command-line for non-federated instances (T319 / #202)
  • Support sign in via
  • Support sign in via Slack (T710)
  • Support sign in via GitLab (#277)
  • Refactor command-line commands (#261)

Developer-Facing Changes

  • Add /api/markdown endpoint for generating HTML from Markdown
  • Add ARM64 build (#213)
  • Support OAuth 2.0 as client application (#225)
  • Add stylesheet cache busting script and use it on official WF release (#288)

Performance / Backend

  • Improve resource use for federation (#249)
  • Fix memory leak from gorilla/session library (#133)

Upgrading from v0.3.0 or later

Download the latest release for your operating system, from the files below. Then follow these steps:

  1. Stop running your writefreely service
  2. Replace all files in your installation except the keys directory with the files from the archive
  3. Start your writefreely service again.

Now make sure your database is backed up, and migrate it with the steps below.

  1. If you're running MariaDB, run this query on your WriteFreely database (fixes #302):
ALTER DATABASE writefreely CHARACTER SET latin1 COLLATE latin1_swedish_ci;
  1. Finally, run this command to update your database schema:
writefreely db migrate

No additional steps are needed to upgrade from v0.3.0 or later. Follow the instructions in each previous release if you're upgrading from an earlier version.


If you are running a custom build, note that there were style changes in this release. Run the following command to generate the latest stylesheets:

make ui


Thanks to everyone who contributed to this release!





Bug reports