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 426fa01fb4 Explain where to post questions, feedback, bugs 5 年之前
author Add author package 5 年之前
cmd/writefreely Create basic server 5 年之前
config Fix overflowing green bg in setup titles 5 年之前
keys Add key generation script + keys folder 5 年之前
less Fully support single-user mode 5 年之前
page Add handler, page, template loading 5 年之前
pages Fully support single-user mode 5 年之前
parse Fix parse package import 5 年之前
static Fully support single-user mode 5 年之前
templates Fully support single-user mode 5 年之前
.gitignore Clean up .gitignore 5 年之前
.travis.yml Add .travis.yml 5 年之前
CONTRIBUTING.md Explain where to post questions, feedback, bugs 5 年之前
LICENSE Use AGPL 5 年之前
Makefile Log more when building 5 年之前
README.md Add info about running in production 5 年之前
account.go Show number of followers on stats page 5 年之前
activitypub.go Use hostname in AP requests' User-Agent header 5 年之前
app.go Fix unnecessarily connecting to DB after multi-user config 5 年之前
auth.go Fill in remaining missing pieces 5 年之前
cache.go Add login and post cache helpers 5 年之前
collections.go Fix ActivityPub endpoint URLs 5 年之前
database.go Insert default values on collection creation 5 年之前
errors.go Fill in remaining missing pieces 5 年之前
export.go Add collection handlers, routes, feeds, sitemaps 5 年之前
feed.go Add collection handlers, routes, feeds, sitemaps 5 年之前
handle.go Remove r.Host from server logs 5 年之前
hostmeta.go Add ActivityPub components, routes, handlers 5 年之前
keys.go Add web session management 5 年之前
keys.sh Fix filename in email encryption key generation 5 年之前
nodeinfo.go Fully support single-user mode 5 年之前
pad.go Fully support single-user mode 5 年之前
postrender.go Fully support single-user mode 5 年之前
posts.go Support retrieving posts as AS2 object 5 年之前
request.go Add collection handlers, routes, feeds, sitemaps 5 年之前
routes.go Fully support single-user mode 5 年之前
schema.sql Remove default value for `posts`.`updated` 5 年之前
session.go Add collection handlers, routes, feeds, sitemaps 5 年之前
sitemap.go Add collection handlers, routes, feeds, sitemaps 5 年之前
templates.go Fix template loading on Windows 5 年之前
unregisteredusers.go Improve sign up 5 年之前
users.go Fill in remaining missing pieces 5 年之前
webfinger.go Add ActivityPub components, routes, handlers 5 年之前

README.md

 

Write Freely


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 lightweight.

Start a blog on our instance

Try the editor

Find another 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 dead-simple, distraction-free and super fast editor
  • Publish drafts and let others proofread them by sharing a private link
  • Build more advanced apps and extensions with the well-documented API

Quick start

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) Log into MySQL and run:
# CREATE DATABASE writefreely;
#
# 2) Import the schema with:
mysql -u YOURUSERNAME -p writefreely < schema.sql

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

# 4) Generate data encryption keys (especially for production)
./keys.sh

# 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.

Development

Ready to hack on your site? Here’s a quick overview.

Prerequisites

Setting up

go get github.com/writeas/writefreely/cmd/writefreely

Create your database, import the schema, and configure your site as shown above.

Now generate the CSS:

make install # Generates encryption keys; installs LESS compiler
make ui      # Generates CSS (run this whenever you update your styles)
make run     # Runs the application

License

Licensed under the AGPL.