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 a6478f1b1d Create blog during config for single-user blogs 5 年之前
author Add author package 5 年之前
cmd/writefreely Create basic server 5 年之前
config Create blog during config for single-user blogs 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 Add contributing guidelines 5 年之前
LICENSE Use AGPL 5 年之前
Makefile Log more when building 5 年之前
README.md Update Travis badge 5 年之前
account.go Remove unnecessary password check on log out 5 年之前
activitypub.go Use hostname in AP requests' User-Agent header 5 年之前
app.go Create blog during config for single-user blogs 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 Support fuzzy username matching on login 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 Add handler, page, template loading 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 Fully support single-user mode 5 年之前
request.go Add collection handlers, routes, feeds, sitemaps 5 年之前
routes.go Fully support single-user mode 5 年之前
schema.sql Add database schema 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.

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.

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

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!

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.