Smallest Wiki Revisited

We ask, what is the least code with which a community can collaborate with each other and the larger federation?

We imagine two files to make a read only wiki: host and view. We supplement this with two more files for authoring: edit and update. github

One additional and optional file will configure both client and server for a community: start.

pages/smallest-wiki-revisited

Install deno then run start. install

tip: Modify start.js to reference your home directory. Deno can do this for you but it requires granting more permissions. post

deno run --allow-net --allow-read start.js

Browse from welcome visitors. start

http://localhost:4444

# Experiments

This makes good on a ten year old challenge: the smallest federated wiki. We will try a few new things hoping to inform Principles for Version Two.

We have no configuration other than that in the server bootstrap start.js.

We make the server ignorant of the lineup. The client is thus independent of the server and ready to be reused in federation outposts.

We distinguish a "page" on the wire or in an object from a "panel" that is a page rendered in the lineup.

We distinguish a "site" that is a domain and a "where" that is a remote domain or a keyword view, origin or local. We add ghost for pages from nowhere.

We separate path?query#fragment where query params will be available to users for customizing client and server. See Client Type Modules

# Remember

Alias item ids when duplicated.