Fedwiki Server Requirements

Here we list the minimum requirements for a Fedwiki Server:

Sites vary in how much service they provide. The Wikiduino implementation, for example, provides only the most elementary service. Here we distinguish three cases:

  1. Participating in the Federation
  2. Originating access to the federation
  3. Interactively creating content for the Federation

Participating in the Federation

To be read from a link a site must serve:

http://example.com/(slug).json http://example.com/favicon.png

To be searched a site must serve:

http://example.com/system/sitemap.json

To be relocated a site should serve:

http://example.com/system/export.json

Origininating Access to the Federation

To be read as an origin a site must serve:

http://example.com/ http://example.com/(slug).html

(plus all related html, css, core javascript)

To support the browser back button and lineup urls a site must serve:

http://example.com/(site/slug/site/slug ...)

To support non-core plugins a site must serve:

http://example.com/system/factories.json http://example.com/system/plugins.json http://example.com/plugins/(plugin)/(plugin).js http://example.com/plugins/(plugin)/(additional resources) http://example.com/about-(plugin)-plugin.json

To engage server-side plugins a site must serve:

ws://example.com/plugin/(plugin)

Interactively creating content for the Federation

To authenticate owners a site must:

(varies between sites)

To accept incremental changes a site must handle puts:

http://example.com/page/(slug)/action

To retrieve uncached content a site should serve:

http://example.com/slug.json?random=(random string)