A clean, Markdown-based publishing platform made for writers. Write together, and build a community. https://writefreely.org
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 9d854c17c1 Only log "No to!" when debugging преди 4 години
.github Automatically assign "bug?" label to bug reports преди 5 години
appstats move tool from gogs into appstats pkg преди 4 години
author Add and update copyright notices преди 4 години
cmd/writefreely return clear error преди 4 години
config Better describe usage stats in setup process преди 4 години
db Add copyright notices to fixed files преди 4 години
key Add TODO for multierror преди 4 години
keys Move key generation to app from keys.sh преди 5 години
less Reduce vertical margin around OAuth buttons преди 4 години
migrations Support OAuth registration with invite code преди 4 години
oauth Added oauth handlers and tests with mocks. Part of T705. преди 4 години
page Add site-wide navigation on colls when chorus = true преди 4 години
pages Remove "login" verbiage on OAuth signup page преди 4 години
parse Describe package parse преди 5 години
scripts Add CSS cache busting to templates in release преди 4 години
static Restyle OAuth account management section преди 4 години
templates Increase App Settings checkbox and select sizes преди 4 години
.dockerignore added .git to make builds cache more effectively and run faster преди 5 години
.gitignore Fix go-bindata error in Travis build преди 5 години
.gitmodules Use HTTP for MathJax submodule преди 5 години
.travis.yml Bump Travis build to Go 1.13 преди 4 години
AUTHORS.md Add @nkoehring to AUTHORS преди 5 години
CONTRIBUTING.md Add details and update CONTRIBUTING guide преди 4 години
Dockerfile Update Dockerfile преди 4 години
LICENSE Use AGPL преди 5 години
Makefile Add CSS cache busting to templates in release преди 4 години
README.md Update README преди 4 години
account.go Mention unset password on failed login преди 4 години
account_import.go Revert "Fix unix timestamp in file upload" преди 4 години
activitypub.go Only log "No to!" when debugging преди 4 години
activitypub_test.go fixes issue #100 - can't follow from pubgate преди 5 години
admin.go Fix admin nav rendering on user viewing преди 4 години
app.go Bump version to 0.12.0 преди 4 години
auth.go Fix spacing around copyright notices преди 5 години
bindata-lib.go Include schema.sql when built with wflib tag преди 5 години
cache.go Fix spacing around copyright notices преди 5 години
collections.go Update calls and vars for Invites and elsewhere преди 4 години
config.ini.example add update checks преди 4 години
database-lib.go Add new err func to wflib and sqlite builds преди 4 години
database-no-sqlite.go Show 503 page on collections under high load преди 4 години
database-sqlite.go Add new err func to wflib and sqlite builds преди 4 години
database.go Reduce db calls on normal invite-based signup преди 4 години
database_test.go Support OAuth registration with invite code преди 4 години
docker-compose.yml Improved the Docker dev workflow slightly. преди 5 години
docker-setup.sh Improved the Docker dev workflow slightly. преди 5 години
errors.go Show 503 page on collections under high load преди 4 години
export.go Fix URLs in CSV exports преди 4 години
feed.go Rename Suspend status to Silence преди 4 години
go.mod Update saturday library to support number+letter hashtags преди 4 години
go.sum Update saturday library to support number+letter hashtags преди 4 години
handle.go Show 503 page on collections under high load преди 4 години
hostmeta.go Make App struct public преди 5 години
instance.go Fix spacing around copyright notices преди 5 години
invites.go Support OAuth registration with invite code преди 4 години
keys.go Break functionality out of Serve() func преди 5 години
main_test.go Unit tests, integration testing, and code cleanup for oauth support. Part of T705. преди 4 години
nodeinfo.go Add `invites` flag in NodeInfo преди 5 години
oauth.go Support OAuth registration with invite code преди 4 години
oauth_gitlab.go Run go fmt on modified GitLab files преди 4 години
oauth_signup.go Support OAuth registration with invite code преди 4 години
oauth_slack.go Move unique OAuth username creation to client-side преди 4 години
oauth_test.go Run go fmt on oauth_test.go преди 4 години
oauth_writeas.go Added state location register hook. T712. преди 4 години
pad.go Merge branch 'develop' into rename-account-suspend преди 4 години
pages.go Enable customizing Reader page преди 4 години
postrender.go Add u-url class and span in mention link преди 4 години
posts.go Log handle on GetProfilePageFromHandle err преди 4 години
read.go Limit Reader posts by count, not publish date преди 4 години
request.go update IsJSON to check for Accept header преди 4 години
routes.go Move /me/oauth/remove endpoint to /api/me/oauth/remove преди 4 години
schema.sql Set up migrations table on initial setup преди 5 години
semver.go add update checks преди 4 години
session.go Break functionality out of Serve() func преди 5 години
sitemap.go Link hashtags to Reader when Chorus mode enabled преди 4 години
sqlite.sql Set up migrations table on initial setup преди 5 години
templates.go Merge branch 'develop' into T713-oauth-account-management преди 4 години
unregisteredusers.go update IsJSON to check for Accept header преди 4 години
updates.go Prevent update check from slowing app init преди 4 години
updates_test.go Rename ReleaseURL() to ReleaseNotesURL() преди 4 години
users.go Rename UserSuspended to UserSilenced преди 4 години
webfinger.go Fix error / info logging around AP mentions преди 4 години

README.md

 

WriteFreely


Latest release Build status Go Report Card

 

WriteFreely is free and open source software for building a writing space on the web — whether a publication, internal blog, or writing community in the fediverse.

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-2020 A Bunch Tell LLC and contributing authors. Licensed under the AGPL.