about this wiki
Breakfast and Coffee is a place to share your breakfast and coffee recommendations and find new eateries to visit. This page describes how the wiki is built. For information on the community and what to share on the wiki, please refer to the home page.
How this wiki is hosted
Breakfast and Coffee is hosted on a server using MediaWiki. MediaWiki was chosen because it works out-of-the-box and is built for collaboration. MediaWiki provides a good interface through which you can add, edit, and delete content. It also has a robust history versioning system as well as a wide ecosystem of extensions that make it easy to add new features as they may be needed.
How to sign in with the wiki
This wiki lets people sign in with IndieAuth, a method of authentication that lets you identify yourself as a domain name or a URL. IndieAuth was chosen as the primary method of authentication for the wiki because the site is designed to facilitate submissions published on members' sites and syndicated to the wiki. This architecture is sometimes referred to as POSSE, or Publish on your Own Site, Syndicate Elsewhere.
The sign in service for this wiki is provided by Vouch Proxy (formerly Lasso) and a custom IndieWeb extension that integrates Vouch Proxy with MediaWiki. Vouch Proxy handles the first and last stages of the "authentication dance" -- initiating authentication and verifying a callback response from the IndieAuth server that actually does the authentication.
This wiki uses IndieAuth.com as its authentication provider, a hosted service that lets you sign in with your domain name using a technique called Web Sign In.
There are plans to allow anyone to sign up without using IndieAuth as a secondary option. But, this is not currently a feature (as of February 3rd, 2022).
How submissions from websites work
Some articles on this wiki have been published on members' sites and syndicated to the wiki. This approach lets members take control over the content they write and publish on Breakfast and Coffee as a method of distribution.
This works through a custom script called microformats-to-mediawiki that hosts a webhook. This webhook translates the webhook POST request sent from webmention.io, the designated Webmention provider for the wiki, into a new wiki page. The script:
- Authenticates with this wiki.
- Retrieves the URL in the webmention.
- Verifies the URL has a syndication link pointing to https://breakfastand.coffee.
- Copies the HTML from the webmention source into a new wiki page.
- Submissions should only be accepted from registered wiki users.
Syndicated to Breakfast and Coffee.
This page was originally created on https://jamesg.blog/2022/02/03/about-this-wiki/.