A clean, Markdown-based publishing platform made for writers. Write together, and build a community. https://writefreely.org
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 
 
Michael Demetriou a102f97c3e Fix #96 5 роки тому
.github Automatically assign "bug?" label to bug reports 5 роки тому
author Fix IsValidUsername check when PagesParentDir isn't current dir 5 роки тому
cmd/writefreely Save config via Apper interface from Admin dash 5 роки тому
config Support changing default landing path 5 роки тому
key Add TODO for multierror 4 роки тому
keys Move key generation to app from keys.sh 5 роки тому
less Add spacing around time element on index pages 5 роки тому
migrations Run migrations on db initialization 5 роки тому
page Link to version-specific writer's guide 5 роки тому
pages Make WriteFreely spacing consistent 5 роки тому
parse Describe package parse 5 роки тому
scripts fix: update script: non-standard version numbers 4 роки тому
static Move MathJax to git submodule 5 роки тому
templates Change `sh` alias back to `bash` 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 Fix go-bindata error in Travis build 5 роки тому
AUTHORS.md Add @nkoehring to AUTHORS 5 роки тому
CONTRIBUTING.md Explain where to post questions, feedback, bugs 5 роки тому
Dockerfile Install the writefreely cmd properly 5 роки тому
LICENSE Use AGPL 5 роки тому
Makefile Merge branch 'develop' into librarization 5 роки тому
README.md Include -config and -init-db steps in make install 5 роки тому
account.go Move key generation and Keychain to key pkg 5 роки тому
activitypub.go Fix more missing hostNames 4 роки тому
activitypub_test.go fixes issue #100 - can't follow from pubgate 5 роки тому
admin.go Support changing landing conf val from Admin UI 4 роки тому
app.go Add TODO for multierror 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 Remove global hostName var 4 роки тому
config.ini.example Make WriteFreely spacing consistent 5 роки тому
database-lib.go Allow compiling without go-sql-driver/mysql pkg 5 роки тому
database-no-sqlite.go Allow compiling without go-sql-driver/mysql pkg 5 роки тому
database-sqlite.go Allow compiling without go-sql-driver/mysql pkg 5 роки тому
database.go Fix #96 4 роки тому
docker-compose.yml Improved the Docker dev workflow slightly. 5 роки тому
docker-setup.sh Improved the Docker dev workflow slightly. 5 роки тому
errors.go Fix spacing around copyright notices 5 роки тому
export.go Merge branch 'develop' into librarization 5 роки тому
feed.go Remove global hostName var 4 роки тому
go.mod Add go-bindata as a module dependency 5 роки тому
go.sum Add go-bindata as a module dependency 5 роки тому
handle.go Save config via Apper interface from Admin dash 5 роки тому
hostmeta.go Make App struct public 5 роки тому
instance.go Fix spacing around copyright notices 5 роки тому
invites.go Make App struct public 5 роки тому
keys.go Break functionality out of Serve() func 5 роки тому
nodeinfo.go Add `invites` flag in NodeInfo 5 роки тому
pad.go Make App struct public 5 роки тому
pages.go Make App struct public 5 роки тому
postrender.go Make WriteFreely spacing consistent 5 роки тому
posts.go Fix more missing hostNames 4 роки тому
read.go Remove global hostName var 4 роки тому
request.go Fix spacing around copyright notices 5 роки тому
routes.go Save config via Apper interface from Admin dash 5 роки тому
schema.sql Set up migrations table on initial setup 5 роки тому
session.go Break functionality out of Serve() func 5 роки тому
sitemap.go Remove global hostName var 4 роки тому
sqlite.sql Set up migrations table on initial setup 5 роки тому
templates.go Break functionality out of Serve() func 5 роки тому
unregisteredusers.go Make App struct public 5 роки тому
users.go Move key generation and Keychain to key pkg 5 роки тому
webfinger.go Remove global hostName var 4 роки тому

README.md

 

WriteFreely


Latest release Go Report Card Build status

 

WriteFreely is a beautifully pared-down blogging platform that’s simple on the surface, yet powerful underneath.

It’s designed to be flexible and share your writing widely, so it’s built around plain text and can publish to the fediverse via ActivityPub. It’s easy to install and light enough to run on a Raspberry Pi.

Try the editor

Find an instance

Features

  • Start a blog for yourself, or host a community of writers
  • Form larger federated networks, and interact over modern protocols like ActivityPub
  • Write on a fast, dead-simple, and distraction-free editor
  • Format text with Markdown
  • Organize posts with hashtags
  • Create static pages
  • Publish drafts and let others proofread them by sharing a private link
  • Create multiple lightweight blogs under a single account
  • Export all data in plain text files
  • Read a stream of other posts in your writing community
  • Build more advanced apps and extensions with the well-documented API
  • Designed around user privacy and consent

Hosting

We offer two kinds of hosting services that make WriteFreely deployment painless: Write.as for individuals, and WriteFreely.host for communities. Besides saving you time, as a customer you directly help fund WriteFreely development.

Write.as

Start a personal blog on Write.as, our flagship instance. Built to eliminate setup friction and preserve your privacy, Write.as helps you start a blog in seconds. It supports custom domains (with SSL) and multiple blogs / pen names per account. Read more here.

WriteFreely.host

WriteFreely.host makes it easy to start a close-knit community — to share knowledge, complement your Mastodon instance, or publish updates in your organization. We take care of the hosting, upgrades, backups, and maintenance so you can focus on writing.

Quick start

WriteFreely has minimal requirements to get up and running — you only need to be able to run an executable.

Note this is currently alpha software. We’re quickly moving out of this v0.x stage, but while we’re in it, there are no guarantees that this is ready for production use.

First, download the latest release for your OS. It includes everything you need to start your blog.

Now extract the files from the archive, change into the directory, and do the following steps:

# 1) Configure your blog
./writefreely --config

# 2) (if you chose MySQL in the previous step) Log into MySQL and run:
# CREATE DATABASE writefreely;

# 3) (if you chose Multi-user setup) Import the schema with:
./writefreely --init-db

# 4) Generate data encryption keys
./writefreely --gen-keys

# 5) Run
./writefreely

# 6) Check out your site at the URL you specified in the setup process
# 7) There is no Step 7, you're done!

For running in production, see our guide.

Packages

WriteFreely is available in these package repositories:

Development

Ready to hack on your site? Get started with our developer guide.

Docker

Read about using Docker in the documentation.

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

Licensed under the AGPL.