Transformative

 Transformative  is 's open source IndieWeb personal website software, in use at barryfrost.com since 2016-11-10. All source code is available on GitHub. Content and media are also stored in a git repository and any changes pushed via a webhook to the database cache.

Microformats

 * Accepts Microformats2: h-entry, h-event, h-cite and h-card
 * Stores all content in Microformats2 JSON format
 * Examples:
 * reply-context (and Repost and Like contexts) parsed and stored as h-cites
 * Examples:
 * Webmention source parsed and stored as h-cites
 * Examples:
 * Context and webmention authors parsed and stored as h-cards
 * Examples:
 * Implements post-type-discovery (plus addition of proposed bookmark type)
 * Native entry types:
 * Note
 * Article
 * Photo
 * Video
 * Bookmark
 * Reply
 * Repost
 * Like
 * RSVP
 * Check-in

Micropub

 * Full Micropub endpoint
 * Create posts via form-encoded and JSON methods
 * Update, delete and undelete posts
 * Photos via media endpoint and multipart
 * Query config, syndications and source
 * Micropub implementation report for Transformative

Webmention

 * Webmentions are sent from all posts using mention-client-ruby
 * Passes all 21 discovery tests on Webmention.rocks
 * Sends and receives new, updated and deleted webmentions
 * Recognises replies, likes, reposts and RSVPs
 * Webmention implementation report for Transformative

POSSE

 * Syndication to Twitter of posts
 * Syndication to Pinboard of bookmarks via its API

person-tag

 * Posts can be created with h-card URLs as categories
 * person-tag h-card is parsed and person's name is displayed as category (tag)

Features

 * Storage of all content in a public GitHub repository to view, fork and (pull-)request corrections
 * Example:
 * Rebuildable database (only) used for caching/querying of MF2 JSON data
 * Media stored in GitHub and served from Amazon S3
 * WebSub pings sent after post creation/update
 * indie-action buttons to allow actions directly from a post
 * Forces all pages and content to be served over SSL
 * Location support: place names and geo: URLs
 * RSS and JSON feeds of posts
 * View posts by categories/tags
 * Monthly archive index pages
 * Navigate index pages using pagination

Requirements

 * Ruby 2.3.x
 * PostgreSQL 9.4 or newer
 * GitHub account
 * AWS S3 bucket