the mews

The web is a loud place now. Pages track you, shout at you, and weigh magnitudes more than the words they carry.

A mews is the lane round the back where the stables were: narrow, quiet, not on the way to anywhere. Small sites, plain words, nothing watching.

Obviously this isn't the first attempt to do so. The IndieWeb and the small web got there first, alternative protocols like Gemini, or Spartan solved it by going and building elsewhere and all of them are right. This project argues that more mellow and private web doesn't really need a new protocol that requires its own client. We already had it.

There used to be a standard that was cut back on purpose: XHTML Mobile Profile 1.2 aka. WAP 2.0 is strict XML with no frames and basic tables, because a 2008 phone couldn't afford more. Let's take out the scripts and styling too! The phones are still the excuse but this time the quiet is the point.

Authors provide structure. Readers control presentation.

For viewing mews pages in regular web browsers let's allow exactly one stylesheet, reduced colour palette, sane defaults, optimized for legibility, and you don't write it: host your own copy of mews-0.1.css on your own site and leave it alone. Dedicated reading apps let readers customize fonts and colours to suit their preferences, so they can enjoy your content in the way that works best for them.

How the directory works

Anyone can submit an address. The page is fetched, put through both of the spec's checks, and listed at once if it passes. Nobody reviews it.

Listed sites are checked again every week, and one whose page stops conforming is dropped. Submit the fixed page and it goes straight back in. Being unreachable buys a few days first.

The checks say nothing about what a site publishes. Write to the address below and a listing comes out.

What this site keeps

A submission stores the address you gave, its domain, the findings, and a salted hash of your IP address for the rate limits, resalted monthly. Raw addresses are never stored.

Everything is deleted after ninety days. No cookies, nothing loaded from anywhere else, and no analytics, which given the subject matter would have been embarrassing.

Have a look round

From the repo

In our repo you can find a sample page, with one of every element a mews page can hold. There's also md2mews.py, a script that turns Markdown into a mews page.

To get started from scratch with a real blog with more pages than you want to write by hand, here's a quickstart script for you. It writes the project, installs the Pelican static site generator together with our pelican-mews plugin, and leaves you a first post to edit:

uvx --from git+https://code.randogoth.com/randogoth/mews.page.git \
    mews-quickstart mysite
cd mysite
uv run pelican content

The pages land in output/ as plain HTML that any web server will serve as valid mews pages.

Get in touch

Bug reports, arguments about the spec, and sites that ought to be listed and aren't, mail me or even better, send me a smolmail:

smol://randogoth@smol.place/olrtb3y4xr73w3gxgslejz4c6klgiawdu63ms2vm3nxekonqxk3a

So: write something. Link to a neighbour. Leave the light on.