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:
- Participating in the Federation
- Originating access to the federation
- 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)