<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title>My Plaintext Blog</title>
	<subtitle>A one-line description of your site, shown on the home page.</subtitle>
	<link href="http://localhost:8080/feed.xml" rel="self"/>
	<link href="http://localhost:8080/"/>
	<updated>2026-09-30T00:00:00Z</updated>
	<id>http://localhost:8080/</id>
	<author>
		<name>Your Name</name>
	</author>
	<entry>
		<title>Deploying to Web 1.0 Hosting</title>
		<link href="http://localhost:8080/deploying-to-web-1-0-hosting/"/>
		<updated>2026-09-30T00:00:00Z</updated>
		<id>http://localhost:8080/deploying-to-web-1-0-hosting/</id>
		<content type="html">&lt;p&gt;Everything this theme builds is plain HTML, so it works as-is on hosts designed for old devices and the smallweb.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://web1.0hosting.net/&quot;&gt;Web 1.0 Hosting&lt;/a&gt; is an option I personally recommend. Sites hosted with it are reachable over both HTTP, on IPv4 and IPv6, by raw IP, through their WAP gateway for old phones, and inside the Yggdrasil overlay network.&lt;/p&gt;
&lt;h2 id=&quot;steps&quot; tabindex=&quot;-1&quot;&gt;Steps&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Register at &lt;a href=&quot;https://web1.0hosting.net/register&quot;&gt;web1.0hosting.net/register&lt;/a&gt; and pick a login and a free domain (&lt;code&gt;.w10.site&lt;/code&gt;, &lt;code&gt;.w0.am&lt;/code&gt;, &lt;code&gt;.narod.ws&lt;/code&gt;, or &lt;code&gt;.oldcities.org&lt;/code&gt;). Credentials are sent by email. Note that Microsoft and Apple mailboxes (outlook/hotmail/live/icloud) reject their mail, so use a different address.&lt;/li&gt;
&lt;li&gt;Run &lt;code&gt;npm run build&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Upload the &lt;em&gt;contents&lt;/em&gt; of &lt;code&gt;_site/&lt;/code&gt; to your site&#39;s root, either over FTP/FTPS with the emailed credentials, or via the browser-based &lt;a href=&quot;https://web1.0hosting.net/net2ftp&quot;&gt;Web FTP uploader&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Done! Your site is live at &lt;code&gt;http://yourlogin.w10.site&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;host-specific-notes&quot; tabindex=&quot;-1&quot;&gt;Host-specific notes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Rename &lt;code&gt;_site/404.html&lt;/code&gt; to &lt;code&gt;error404.html&lt;/code&gt;, as that&#39;s the filename web 1.0 hosting looks for. (&lt;code&gt;src/_redirects&lt;/code&gt; is Netlify-only)&lt;/li&gt;
&lt;li&gt;A &lt;code&gt;humans.txt&lt;/code&gt; in the site root (&amp;lt;=400 chars) sets your description on their &amp;quot;last edited / most visited / most liked&amp;quot; listing pages.&lt;/li&gt;
&lt;li&gt;An empty file named &lt;code&gt;modem&lt;/code&gt; in the root caps your site&#39;s bandwidth at 5 kbps, if you want the &lt;em&gt;authentic dial-up experience&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Optional extras: server-side includes, plus guestbook/chat/counter CGI scripts that work in ancient browsers. See &lt;a href=&quot;https://web1.0hosting.net/faq&quot;&gt;their FAQ&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;support-a-friend-of-the-small-web&quot; tabindex=&quot;-1&quot;&gt;Support a friend of the small web&lt;/h2&gt;
&lt;p&gt;Denys, who runs the &lt;a href=&quot;https://elpis.ws/cgi-bin/cms/&quot;&gt;ELPiS Web 1.0 zine&lt;/a&gt;, has been diagnosed with cancer. He is currently living in Ukraine and does not have funds for medication beyond painkillers. If this theme or the smallweb has given you anything, please consider donating or sharing (&lt;a href=&quot;https://social.lol/@brennan/117247550818652805&quot;&gt;original post&lt;/a&gt;):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PayPal: &lt;a href=&quot;https://www.paypal.com/donate/?hosted_button_id=2PYBDTJ6EM54U&quot;&gt;https://www.paypal.com/donate/?hosted_button_id=2PYBDTJ6EM54U&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Monobank: &lt;a href=&quot;https://send.monobank.ua/6hDcCqG3tc&quot;&gt;https://send.monobank.ua/6hDcCqG3tc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;BTC: &lt;code&gt;bc1qwmkngqgxw3kzu35lp2npkjtepghhx6mftkfw6g&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;ETH: &lt;code&gt;0x5931d8E3F279eb65F71295374a9425a32032F473&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
</content>
	</entry>
	<entry>
		<title>Formatting Demo</title>
		<link href="http://localhost:8080/formatting-demo/"/>
		<updated>2026-01-02T00:00:00Z</updated>
		<id>http://localhost:8080/formatting-demo/</id>
		<content type="html">&lt;p&gt;This post displays every piece of Markdown syntax the theme supports, so you can see how each renders. Delete this file and &lt;code&gt;hello-world.md&lt;/code&gt; and add your own writing.&lt;/p&gt;
&lt;h2 id=&quot;paragraphs&quot; tabindex=&quot;-1&quot;&gt;Paragraphs&lt;/h2&gt;
&lt;p&gt;A blank line starts a new paragraph. A single line break
stays in the same paragraph. End a line with a backslash&lt;br /&gt;
for a hard break.&lt;/p&gt;
&lt;h2 id=&quot;headings&quot; tabindex=&quot;-1&quot;&gt;Headings&lt;/h2&gt;
&lt;p&gt;The page title is the only &lt;code&gt;h1&lt;/code&gt;. In the post body, &lt;code&gt;##&lt;/code&gt; through &lt;code&gt;######&lt;/code&gt; all work. Every heading has a literal &lt;code&gt;#&lt;/code&gt; marker relative to its level.(aria-hidden, since the heading tag announces the level to screen readers):&lt;/p&gt;
&lt;h3 id=&quot;third-level&quot; tabindex=&quot;-1&quot;&gt;Third level&lt;/h3&gt;
&lt;h4 id=&quot;fourth-level&quot; tabindex=&quot;-1&quot;&gt;Fourth level&lt;/h4&gt;
&lt;h5 id=&quot;fifth-level&quot; tabindex=&quot;-1&quot;&gt;Fifth level&lt;/h5&gt;
&lt;h6 id=&quot;sixth-level&quot; tabindex=&quot;-1&quot;&gt;Sixth level&lt;/h6&gt;
&lt;p&gt;Setext-style headings (&lt;code&gt;===&lt;/code&gt; or &lt;code&gt;---&lt;/code&gt; under a line of text) also work, but this page sticks to ATX syntax.&lt;/p&gt;
&lt;h2 id=&quot;emphasis&quot; tabindex=&quot;-1&quot;&gt;Emphasis&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;italic&lt;/em&gt; or &lt;em&gt;italic&lt;/em&gt;, &lt;strong&gt;bold&lt;/strong&gt; or &lt;strong&gt;bold&lt;/strong&gt;, &lt;em&gt;&lt;strong&gt;bold italic&lt;/strong&gt;&lt;/em&gt;, and &lt;s&gt;strikethrough&lt;/s&gt; all render normally.
Escape a marker with a backslash to print literally: *not italic*.&lt;/p&gt;
&lt;h2 id=&quot;links&quot; tabindex=&quot;-1&quot;&gt;Links&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://www.11ty.dev/&quot;&gt;Inline links&lt;/a&gt; and &lt;a href=&quot;https://www.11ty.dev/&quot; title=&quot;Eleventy&quot;&gt;links with a title&lt;/a&gt; display as anchors. A URL in angle brackets autolinks, &lt;a href=&quot;https://www.11ty.dev/&quot;&gt;https://www.11ty.dev/&lt;/a&gt; as do email addresses, &lt;a href=&quot;mailto:mail@example.com&quot;&gt;mail@example.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Reference-style links work too, see &lt;a href=&quot;https://www.11ty.dev/&quot;&gt;the 11ty docs&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A bare URL like https://example.com is &lt;em&gt;not&lt;/em&gt; linkified (&lt;code&gt;linkify&lt;/code&gt; is off), so wrap in &lt;code&gt;&amp;lt;&amp;gt;&lt;/code&gt; if you want it clickable.&lt;/p&gt;
&lt;h2 id=&quot;images&quot; tabindex=&quot;-1&quot;&gt;Images&lt;/h2&gt;
&lt;p&gt;Images are not embedded. &lt;code&gt;![a red fox in snow](/assets/fox.jpg)&lt;/code&gt; renders as a plain link to the image file:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://localhost:8080/assets/fox.jpg&quot;&gt;[image: a red fox in snow]&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;An image with no alt text becomes just &lt;code&gt;[image]&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://localhost:8080/assets/pixel.gif&quot;&gt;[image]&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;lists&quot; tabindex=&quot;-1&quot;&gt;Lists&lt;/h2&gt;
&lt;p&gt;Unordered, nested (&lt;code&gt;-&lt;/code&gt;, &lt;code&gt;*&lt;/code&gt;, and &lt;code&gt;+&lt;/code&gt; markers are equivalent):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;one&lt;/li&gt;
&lt;li&gt;two
&lt;ul&gt;
&lt;li&gt;nested with a two-space indent&lt;/li&gt;
&lt;li&gt;another nested item&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;three&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ordered (&lt;code&gt;1.&lt;/code&gt; or &lt;code&gt;1)&lt;/code&gt; delimiters both work):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;first&lt;/li&gt;
&lt;li&gt;second&lt;/li&gt;
&lt;li&gt;third&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;blockquotes&quot; tabindex=&quot;-1&quot;&gt;Blockquotes&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;A quoted paragraph gets a literal &amp;quot;&amp;gt; &amp;quot; prefix on top of the usual indentation, the way a plain-text quote looks in email.&lt;/p&gt;
&lt;p&gt;Multi-paragraph quotes work.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Nested quotes&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;go deeper.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Blockquotes can contain any other block element:&lt;/p&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;a list item&lt;/li&gt;
&lt;li&gt;another item&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;and inline code&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&quot;code&quot; tabindex=&quot;-1&quot;&gt;Code&lt;/h2&gt;
&lt;p&gt;Inline code like &lt;code&gt;const x = 1&lt;/code&gt; and fenced blocks get a faint background tint. Fence with triple backticks and an optional language hint:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;function wordCount(html) {
  const text = html.replace(/&amp;lt;[^&amp;gt;]+&amp;gt;/g, &amp;quot; &amp;quot;);
  return (text.match(/&#92;S+/g) || []).length;
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Tilde fences work too:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;a fenced block with no language
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For a literal backtick inside inline code, fence with double backticks: &lt;code&gt;`like this`&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&quot;tables&quot; tabindex=&quot;-1&quot;&gt;Tables&lt;/h2&gt;
&lt;p&gt;Tables scroll horizontally inside their own box instead of going past the width of the viewport, and support column alignment:&lt;/p&gt;
&lt;div class=&quot;scroll&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:left&quot;&gt;Feature&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;Syntax&lt;/th&gt;
&lt;th style=&quot;text-align:right&quot;&gt;Result&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;left align&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;code&gt;:---&lt;/code&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:right&quot;&gt;left&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;centered&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;code&gt;:---:&lt;/code&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:right&quot;&gt;center&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;right align&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;code&gt;---:&lt;/code&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:right&quot;&gt;right&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;h2 id=&quot;horizontal-rules&quot; tabindex=&quot;-1&quot;&gt;Horizontal rules&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;---&lt;/code&gt;, &lt;code&gt;***&lt;/code&gt;, or &lt;code&gt;___&lt;/code&gt; on its own line displays as a clipped full-width rule:&lt;/p&gt;
&lt;div class=&quot;rule&quot; aria-hidden=&quot;true&quot;&gt;------------------------------------------------------------------------------------------------------------------------&lt;/div&gt;
&lt;h2 id=&quot;raw-html&quot; tabindex=&quot;-1&quot;&gt;Raw HTML&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;html: false&lt;/code&gt; in set in the markdown-it config, and so raw markup prints literally instead of executing: &amp;lt;em&amp;gt;this stays as text&amp;lt;/em&amp;gt;. To actually italicize, use asterisks.&lt;/p&gt;
&lt;p&gt;Likewise, Nunjucks templating is disabled in post bodies (&lt;code&gt;markdownTemplateEngine: false&lt;/code&gt;), so &lt;code&gt;{{ 2 + 2 }}&lt;/code&gt; stays literal instead of evaluating.&lt;/p&gt;
&lt;h2 id=&quot;ascii-punctuation&quot; tabindex=&quot;-1&quot;&gt;ASCII punctuation&lt;/h2&gt;
&lt;p&gt;Typographic punctuation in source pages and posts are normalized to ASCII at render time. This means &amp;quot;curly quotes&amp;quot;, em--dashes, en-dashes, and ellipsis... all render as regular &lt;code&gt;&amp;quot;&lt;/code&gt;, &lt;code&gt;--&lt;/code&gt;, &lt;code&gt;-&lt;/code&gt;, and &lt;code&gt;...&lt;/code&gt;. Code spans and URLs are not normalized.&lt;/p&gt;
</content>
	</entry>
	<entry>
		<title>Hello, World</title>
		<link href="http://localhost:8080/hello-world/"/>
		<updated>2026-01-01T00:00:00Z</updated>
		<id>http://localhost:8080/hello-world/</id>
		<content type="html">&lt;p&gt;Welcome! This is an example post from the plaintext 11ty theme starter. Delete it (and &lt;code&gt;formatting-demo.md&lt;/code&gt;) and write your own.&lt;/p&gt;
&lt;h2 id=&quot;how-posts-work&quot; tabindex=&quot;-1&quot;&gt;How Posts Work&lt;/h2&gt;
&lt;p&gt;Every file in &lt;code&gt;src/posts/&lt;/code&gt; is a post. Front matter only needs a &lt;code&gt;title&lt;/code&gt;, &lt;code&gt;date&lt;/code&gt;, &lt;code&gt;tags&lt;/code&gt;, and &lt;code&gt;summary&lt;/code&gt;. The slug and word count are computed automatically:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-yaml&quot;&gt;---
title: My First Post        # -&amp;gt; permalink: /my-first-post/
date: 2026-01-01
tags: [meta, example]
summary: One line of text.  # -&amp;gt; shown under the title in listings
---

Post body here, in Markdown.
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The URL slug comes from &lt;code&gt;title&lt;/code&gt;, via Eleventy&#39;s &lt;code&gt;slugify&lt;/code&gt; filter.&lt;/li&gt;
&lt;li&gt;The word count under the title is computed from the post body.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;date: YYYY-MM-DD&lt;/code&gt; (no time) unless you need to control ordering between two posts on the same day.
&lt;ul&gt;
&lt;li&gt;You can also set &lt;code&gt;displayDate: YYYY-MM-DD&lt;/code&gt; explicitly alongside a full &lt;code&gt;date&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;what-to-edit&quot; tabindex=&quot;-1&quot;&gt;What to edit&lt;/h2&gt;
&lt;p&gt;Customie this site using the &lt;code&gt;theme.config.js&lt;/code&gt; file in the repo root. That&#39;s where you can change the site name, URL, author, intro line, nav links, footer text, and how many posts show on the home page and in the feed, etc.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src/pages/about.md&lt;/code&gt; and &lt;code&gt;src/pages/colophon.md&lt;/code&gt; are plain pages, edit them freely or delete them and remove the corresponding entries from &lt;code&gt;theme.config.js&lt;/code&gt;&#39;s &lt;code&gt;nav&lt;/code&gt; array. Any &lt;code&gt;.md&lt;/code&gt;/&lt;code&gt;.njk&lt;/code&gt; file you add to &lt;code&gt;src/pages/&lt;/code&gt; becomes a page at &lt;code&gt;sitename.com/&amp;lt;filename&amp;gt;/&lt;/code&gt; automatically.&lt;/p&gt;
&lt;p&gt;That&#39;s it.&lt;/p&gt;
</content>
	</entry>
</feed>
