Skip to content
A personal website / #indieweb engine with curved swords. Curved! Swords!
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
example-feeds
indieweb-algorithms @ 833d940
indieweb-components @ 8cdd062
mf2sql @ dc6039b
micro-panel @ d3ea1ed
sweetroll-be
sweetroll-fe
sweetroll-mu
sweetroll-node-common
.editorconfig
.gitignore
.gitmodules
.mailmap
.tmuxp.yaml
CODE_OF_CONDUCT.md
README.md
UNLICENSE
nginx.conf
sweetroll-site.nginx.conf

README.md

sweetroll unlicense

A powerful engine for your personal website.

  • lets you publish many kinds of content
    • notes (microblog posts), articles (big blog posts), replies, reposts, likes, quotations, bookmarks, reviews…
  • supports categories, tags, full text search, content warnings, photos (with Exif metadata display), videos, audio files, private posts (drafts), automatic offline in-browser caching (ServiceWorkers), color theme customization
  • lets you talk to other IndieWeb-style websites by sending and receiving Webmentions (including Salmentions for threaded conversations)
  • lets you use Micropub to edit your site (post, update, delete, undelete)
    • has a media endpoint for file uploads that optimizes images, extracts Exif metadata, and works on AWS Lambda + S3
    • lets you use Markdown for post text, with nice code highlighting and math rendering
    • the included admin panel (micro-panel) itself uses Micropub
  • sends WebSub (formerly PubSubHubbub) notifications on new posts (for readers)
  • uses Granary to provide content as Atom, ActivityStreams 2.0 and JSON Feed (with WebSub notifications too)
  • represents all the things as Microformats2 objects
  • uses PostgreSQL with the mf2sql schema for storage
  • consists of services written in Haskell and Node.js

I'm running it on my website.

Installation

Installing Sweetroll on a server requires some UNIX sysadmin skills. If you can't do it, ask your friends for help or check out other IndieWeb projects: some of them have hosted versions, some run on shared PHP hosting.

Read the Docs for installation instructions!

TODO

  • frontend
    • webhooks (e.g. pushover notifications) on new/updated mentions, config in site-settings
  • micropub
    • draft flag → draft tag and private acl
    • syndication to other micropub endpoints e.g. for silo.pub
  • webmention
    • link removal webmentions
    • reverify/refetch to update user profiles and stuff
    • moderation tools
      • different modes in config: allow all (except blocked), allow known good domains (e.g. domains replied to), premoderate all, turn off webmention
      • blocking domains
        • sharing block lists
    • deduplicate syndicated replies
    • vouch
    • private webmention

License

This is free and unencumbered software released into the public domain.
For more information, please refer to the UNLICENSE file or unlicense.org.

You can’t perform that action at this time.