A focused writing and publishing space. https://write.with.parts
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Matt Baer 96eb800eaa
Merge pull request #730 from testwill/loop
1 year ago
.github Merge pull request #760 from writefreely/dependabot/github_actions/docker/login-action-3.0.0 1 year 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 chore: unnecessary use of fmt.Sprintf 1 year ago
db chore: slice replace loop 1 year ago
key Change copyright notices to Musing Studio LLC 2 years ago
keys
less Change copyright notices to Musing Studio LLC 2 years ago
migrations Support rel=me verification on blogs 1 year ago
oauth
page Merge branch 'develop' into custom-css 2 years ago
pages Update 404-general.tmpl 3 years ago
parse Change copyright notices to Musing Studio LLC 2 years ago
prose Merge pull request #537 from dariusk/fix-drop 2 years ago
scripts Change copyright notices to Musing Studio LLC 2 years ago
static Change copyright notices to Musing Studio LLC 2 years ago
templates Merge pull request #508 from writefreely/lang-posts-filter 1 year ago
testdata
.dockerignore
.gitignore Support custom instance-level stylesheet 3 years ago
.travis.yml
AUTHORS.md
CONTRIBUTING.md
Dockerfile Adds image labels to connect package with repository 1 year ago
LICENSE
Makefile Merge pull request #638 from zer-far/dev 1 year ago
README.md Change copyright notices to Musing Studio LLC 2 years ago
SECURITY.md Add security policy 3 years ago
account.go Support rel=me verification on blogs 1 year ago
account_import.go chore: remove refs to deprecated io/ioutil 1 year ago
activitypub.go Merge pull request #730 from testwill/loop 1 year ago
activitypub_test.go
admin.go Change copyright notices to Musing Studio LLC 2 years ago
app.go Merge pull request #728 from testwill/ioutil 1 year 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 Merge pull request #508 from writefreely/lang-posts-filter 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 Merge pull request #508 from writefreely/lang-posts-filter 1 year ago
database_test.go
docker-compose.yml
docker-setup.sh
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 Support rel=me verification on blogs 1 year ago
go.sum Support rel=me verification on blogs 1 year ago
gopher.go Change copyright notices to Musing Studio LLC 2 years ago
handle.go Merge pull request #483 from writefreely/log-gone-user-out 2 years 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
keys.go chore: remove refs to deprecated io/ioutil 1 year ago
main_test.go
monetization.go chore: remove refs to deprecated io/ioutil 1 year ago
nodeinfo.go Log any database errors when fetching stats 1 year ago
oauth.go chore: remove refs to deprecated io/ioutil 1 year ago
oauth_generic.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_gitea.go #514 - Fix login with Gitea OAuth problems: external user ID not properly recorded. 3 years ago
oauth_gitlab.go
oauth_signup.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_slack.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_test.go Change copyright notices to Musing Studio LLC 2 years ago
oauth_writeas.go
ossl_legacy.cnf fix Makefile and Dockerfile to build on latest go versions 2 years ago
pad.go Merge pull request #483 from writefreely/log-gone-user-out 2 years ago
pages.go Change copyright notices to Musing Studio LLC 2 years 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 #729 from testwill/fmt 1 year ago
posts_test.go Change copyright notices to Musing Studio LLC 2 years ago
read.go Change copyright notices to Musing Studio LLC 2 years ago
request.go Correctly respond to application/ld+json requests 1 year ago
routes.go Merge branch 'develop' into lang-posts-filter 1 year ago
routes_test.go
schema.sql
semver.go
session.go Merge pull request #483 from writefreely/log-gone-user-out 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 1 year ago
unregisteredusers.go Change copyright notices to Musing Studio LLC 2 years ago
updates.go chore: remove refs to deprecated io/ioutil 1 year ago
updates_test.go
users.go Change copyright notices to Musing Studio LLC 2 years ago
webfinger.go chore: remove refs to deprecated io/ioutil 1 year 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.