A focused writing and publishing space. https://write.with.parts
 
 
 
 
Matt Baer 0be229cdaa
Merge pull request #1155 from freesteph/fix/allow-eu-emails
1 month ago
.github Merge pull request #933 from CDN18/develop 6 months ago
appstats
author Catch and output directory walking errors 2 years ago
cmd/writefreely Change copyright notices to Musing Studio LLC 2 years ago
config email: allow sending emails from EU Mailgun domains 3 months ago
db chore: slice replace loop 2 years ago
key Change copyright notices to Musing Studio LLC 2 years ago
keys
less Merge pull request #777 from writefreely/reset-password 1 year ago
mailer email: allow sending emails from EU Mailgun domains 3 months ago
migrations Merge pull request #778 from writefreely/better-indexing 1 year ago
oauth
page Merge branch 'develop' into custom-css 2 years ago
pages Merge pull request #777 from writefreely/reset-password 1 year ago
parse Prevent 500 errors on too-long collection title or description 1 year ago
prose Merge pull request #537 from dariusk/fix-drop 2 years ago
scripts spelling: modified 2 years ago
spam Merge pull request #777 from writefreely/reset-password 1 year ago
static Link title directly to post page 4 months ago
templates Fix broken links in drafts loaded with "load more" by dynamically creating edit link based on single_user bool in config.ini 4 months ago
testdata
.dockerignore Include .git context in Docker build for UI version number 1 year ago
.editorconfig
.gitignore
.travis.yml
AUTHORS.md
CONTRIBUTING.md Update Phabricator URL in docs and PR template 6 months ago
Dockerfile Merge pull request #894 from claabs/docker-healthcheck-fix 6 months ago
Dockerfile.prod Create Dockerfile & sample docker-compose.yml for production build 6 months ago
LICENSE
Makefile Fix glibc issue 4 months ago
README.md Change copyright notices to Musing Studio LLC 2 years ago
SECURITY.md
account.go Send password resets and login emails with new email layer 4 months ago
account_import.go chore: remove refs to deprecated io/ioutil 2 years ago
activitypub.go fix: do second actor deref from main-key endpoint against publickey.Owner 9 months ago
activitypub_test.go
admin.go Fix bad copy pasta 1 year ago
app.go Bump version to 0.15.1 5 months ago
auth.go Change copyright notices to Musing Studio LLC 2 years ago
cache.go Change copyright notices to Musing Studio LLC 2 years ago
collections.go Fix Collection property serialization on API 1 year ago
database-lib.go Change copyright notices to Musing Studio LLC 2 years ago
database-no-sqlite.go Change copyright notices to Musing Studio LLC 2 years ago
database-sqlite.go Change copyright notices to Musing Studio LLC 2 years ago
database.go add f.created to join, add Created to Scan 1 year ago
database_test.go
docker-compose.prod.yml Create Dockerfile & sample docker-compose.yml for production build 6 months ago
docker-compose.yml
docker-setup.sh
email.go email: allow sending emails from EU Mailgun domains 3 months ago
errors.go Change copyright notices to Musing Studio LLC 2 years ago
export.go Change copyright notices to Musing Studio LLC 2 years ago
feed.go Change copyright notices to Musing Studio LLC 2 years ago
go.mod Add basic email abstraction layer 4 months ago
go.sum Add basic email abstraction layer 4 months ago
gopher.go Change copyright notices to Musing Studio LLC 2 years ago
handle.go Correctly respond to application/ld+json requests, part 2 1 year ago
hostmeta.go Change copyright notices to Musing Studio LLC 2 years ago
instance.go Change copyright notices to Musing Studio LLC 2 years ago
invites.go Merge pull request #483 from writefreely/log-gone-user-out 2 years ago
jobs.go
keys.go Merge pull request #658 from jsoref/spelling 1 year ago
main_test.go
monetization.go chore: remove refs to deprecated io/ioutil 2 years ago
nodeinfo.go Use @writefreely handle for nodeinfo 5 months ago
oauth.go chore: remove refs to deprecated io/ioutil 2 years ago
oauth_generic.go add client_id and client_secret to exchangeOauthCode form 9 months ago
oauth_gitea.go
oauth_gitlab.go
oauth_signup.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_slack.go Switch to gosimple/slug from writeas/slug 5 months ago
oauth_test.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_writeas.go
ossl_legacy.cnf Re-add ossl_legacy.cnf 1 year ago
pad.go Merge pull request #483 from writefreely/log-gone-user-out 2 years ago
pages.go Merge pull request #658 from jsoref/spelling 1 year ago
postrender.go Merge pull request #482 from writefreely/rel-nofollow 1 year ago
postrender_test.go Change copyright notices to Musing Studio LLC 2 years ago
posts.go Merge pull request #1047 from writefreely/use-gosimple-slug 5 months ago
posts_test.go Change copyright notices to Musing Studio LLC 2 years ago
read.go Fix Admin and Invite links never showing on Reader nav 1 year ago
request.go Correctly respond to application/ld+json requests 1 year ago
routes.go Remove length restriction on other methods on /api/posts/{post} 4 months ago
routes_test.go
schema.sql
semver.go
session.go Merge branch 'develop' into letters 2 years ago
sitemap.go Change copyright notices to Musing Studio LLC 2 years ago
sqlite.sql
templates.go chore: remove refs to deprecated io/ioutil 2 years ago
unregisteredusers.go Change copyright notices to Musing Studio LLC 2 years ago
updates.go chore: remove refs to deprecated io/ioutil 2 years ago
updates_test.go
users.go Merge branch 'develop' into letters 2 years ago
webfinger.go chore: remove refs to deprecated io/ioutil 2 years ago

README.md

 

WriteFreely


Latest release Build status Go Report Card

 

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.

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 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-2022 Musing Studio LLC and contributing authors. Licensed under the AGPL.