<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="https://www.rssboard.org/media-rss"><channel><title>Home on CyberLavandaTea — demo</title><link>http://fundor333.com/cyberlavandatea/</link><description>CyberLavandaTea demo — a dark, blue + green Hugo theme for dev blogs.</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 13 Sep 2026 09:00:00 +0200</lastBuildDate><atom:link href="http://fundor333.com/cyberlavandatea/index.xml" rel="self" type="application/rss+xml"/><item><title>Build a search index with Lunr in Hugo</title><link>http://fundor333.com/cyberlavandatea/post/build-a-lunr-search-index/</link><pubDate>Tue, 08 Sep 2026 10:00:00 +0200</pubDate><guid>http://fundor333.com/cyberlavandatea/post/build-a-lunr-search-index/</guid><category>hugo</category><category>search</category><category>javascript</category><description>&lt;p>Hugo can emit a &lt;strong>custom output format&lt;/strong>: a &lt;code>search.json&lt;/code> file with every page.
The client downloads the index once and then queries
&lt;a href="https://lunrjs.com/" target="_blank" rel="noopener" class="a-post">lunr &lt;span aria-hidden="true">↗&lt;/span>&lt;/a>
locally.&lt;/p>
&lt;h2 id="the-index-template" class="group scroll-mt-20">
&lt;a href="#the-index-template" class="no-underline">
The index template
&lt;span class="heading-anchor ml-2 text-primary opacity-0 transition-opacity group-hover:opacity-60" aria-hidden="true">¶&lt;/span>
&lt;/a>
&lt;/h2>
&lt;div class="highlight not-prose">&lt;pre tabindex="0" class="chroma">&lt;code class="language-js" data-lang="js">&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// build the index from the rendered pages
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kr">const&lt;/span> &lt;span class="nx">index&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">lunr&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kd">function&lt;/span> &lt;span class="p">()&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">ref&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;uri&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">field&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;title&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">field&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;content&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="kr">const&lt;/span> &lt;span class="nx">doc&lt;/span> &lt;span class="k">of&lt;/span> &lt;span class="nx">request&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">response&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">add&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">doc&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">lookup&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="nx">doc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">uri&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">doc&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">200&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">});&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
&lt;blockquote>
&lt;p>Note: the index is rebuilt on every build. With a few hundred posts the file
stays under 200 KB.&lt;sup id="fnref:1">&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref">1&lt;/a>&lt;/sup>&lt;/p></description></item><item><title>2026-09-07 12:00</title><link>http://fundor333.com/cyberlavandatea/micro/2026-09-07-1200/</link><pubDate>Mon, 07 Sep 2026 12:00:00 +0200</pubDate><guid>http://fundor333.com/cyberlavandatea/micro/2026-09-07-1200/</guid><category>meta</category><description>&lt;p>First test micropost: an IndieWeb response plus &lt;code>h-entry&lt;/code> markup.&lt;/p></description></item><item><title>A blue + green dark palette</title><link>http://fundor333.com/cyberlavandatea/post/a-blue-green-dark-palette/</link><pubDate>Sat, 05 Sep 2026 09:00:00 +0200</pubDate><guid>http://fundor333.com/cyberlavandatea/post/a-blue-green-dark-palette/</guid><category>design</category><category>css</category><category>accessibility</category><description>&lt;p>The theme uses &lt;strong>six roles&lt;/strong>: Primary (green), Content, Links (blue), Visited,
Background, Inactive. Surfaces and borders are mixes of Content over Background,
so no extra hue enters the &lt;em>chrome&lt;/em>.&lt;/p>
&lt;p>An unvisited link is &lt;strong>blue&lt;/strong>; a &lt;a href="#" class="a-post">visited link&lt;/a>
is sage; on &lt;code>:hover&lt;/code> it
turns green. Every text pairing clears WCAG AA, and body text and code reach
AAA.&lt;sup id="fnref:1">&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref">1&lt;/a>&lt;/sup>&lt;/p>
&lt;div class="footnotes" role="doc-endnotes">
&lt;hr>
&lt;ol>
&lt;li id="fn:1">
&lt;p>Primary on Background measures ~10.2:1, well past the 7:1 AAA
threshold for normal text — see the &lt;a href="http://fundor333.com/cyberlavandatea/style-guide/" class="a-post">style guide&lt;/a>
for the
full contrast table.&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink">&amp;#x21a9;&amp;#xfe0e;&lt;/a>&lt;/p></description></item><item><title>Math Sample</title><link>http://fundor333.com/cyberlavandatea/post/2017-03-05-math-sample/</link><pubDate>Sun, 05 Mar 2017 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2017-03-05-math-sample/</guid><category>example</category><category>math</category><description>&lt;p>KaTeX can be used to generate complex math formulas server-side.&lt;/p>
&lt;p>$$
\phi = \frac{(1+\sqrt{5})}{2} = 1.6180339887\cdots
$$&lt;/p>
&lt;p>Additional details can be found on &lt;a href="https://github.com/Khan/KaTeX" target="_blank" rel="noopener" class="a-post">GitHub &lt;span aria-hidden="true">↗&lt;/span>&lt;/a>
or on the &lt;a href="http://tiddlywiki.com/plugins/tiddlywiki/katex/" target="_blank" rel="noopener" class="a-post">Wiki &lt;span aria-hidden="true">↗&lt;/span>&lt;/a>
.&lt;/p></description></item><item><title>Code Sample</title><link>http://fundor333.com/cyberlavandatea/post/2016-03-08-code-sample/</link><pubDate>Tue, 08 Mar 2016 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2016-03-08-code-sample/</guid><category>example</category><category>code</category><description>&lt;p>The following are two code samples using syntax highlighting.&lt;/p></description></item><item><title>Test markdown</title><link>http://fundor333.com/cyberlavandatea/post/2015-02-20-test-markdown/</link><pubDate>Fri, 20 Feb 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-02-20-test-markdown/</guid><category>example</category><category>markdown</category><description>&lt;p>You can write regular &lt;a href="http://markdowntutorial.com/" target="_blank" rel="noopener" class="a-post">markdown &lt;span aria-hidden="true">↗&lt;/span>&lt;/a>
here and Jekyll will automatically convert it to a nice webpage. I strongly encourage you to &lt;a href="http://markdowntutorial.com/" target="_blank" rel="noopener" class="a-post">take 5 minutes to learn how to write in markdown &lt;span aria-hidden="true">↗&lt;/span>&lt;/a>
- it&amp;rsquo;ll teach you how to transform regular text into bold/italics/headings/tables/etc.&lt;/p>
&lt;p>&lt;strong>Here is some bold text&lt;/strong>&lt;/p>
&lt;h2 id="here-is-a-secondary-heading" class="group scroll-mt-20">
&lt;a href="#here-is-a-secondary-heading" class="no-underline">
Here is a secondary heading
&lt;span class="heading-anchor ml-2 text-primary opacity-0 transition-opacity group-hover:opacity-60" aria-hidden="true">¶&lt;/span>
&lt;/a>
&lt;/h2>
&lt;p>Here&amp;rsquo;s a useless table:&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">Number&lt;/th>
&lt;th style="text-align: left">Next number&lt;/th>
&lt;th style="text-align: left">Previous number&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Five&lt;/td>
&lt;td style="text-align: left">Six&lt;/td>
&lt;td style="text-align: left">Four&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Ten&lt;/td>
&lt;td style="text-align: left">Eleven&lt;/td>
&lt;td style="text-align: left">Nine&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Seven&lt;/td>
&lt;td style="text-align: left">Eight&lt;/td>
&lt;td style="text-align: left">Six&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Two&lt;/td>
&lt;td style="text-align: left">Three&lt;/td>
&lt;td style="text-align: left">One&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>How about a yummy crepe?&lt;/p></description></item><item><title>To be</title><link>http://fundor333.com/cyberlavandatea/post/2015-02-13-hamlet-monologue/</link><pubDate>Fri, 13 Feb 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-02-13-hamlet-monologue/</guid><description>&lt;p>To be, or not to be&amp;ndash;that is the question:
Whether &amp;rsquo;tis nobler in the mind to suffer
The slings and arrows of outrageous fortune
Or to take arms against a sea of troubles
And by opposing end them. To die, to sleep&amp;ndash;
No more&amp;ndash;and by a sleep to say we end
The heartache, and the thousand natural shocks
That flesh is heir to. &amp;lsquo;Tis a consummation
Devoutly to be wished. To die, to sleep&amp;ndash;
To sleep&amp;ndash;perchance to dream: ay, there&amp;rsquo;s the rub,
For in that sleep of death what dreams may come
When we have shuffled off this mortal coil,
Must give us pause. There&amp;rsquo;s the respect
That makes calamity of so long life.
For who would bear the whips and scorns of time,
Th&amp;rsquo; oppressor&amp;rsquo;s wrong, the proud man&amp;rsquo;s contumely
The pangs of despised love, the law&amp;rsquo;s delay,
The insolence of office, and the spurns
That patient merit of th&amp;rsquo; unworthy takes,
When he himself might his quietus make
With a bare bodkin? Who would fardels bear,
To grunt and sweat under a weary life,
But that the dread of something after death,
The undiscovered country, from whose bourn
No traveller returns, puzzles the will,
And makes us rather bear those ills we have
Than fly to others that we know not of?
Thus conscience does make cowards of us all,
And thus the native hue of resolution
Is sicklied o&amp;rsquo;er with the pale cast of thought,
And enterprise of great pitch and moment
With this regard their currents turn awry
And lose the name of action. &amp;ndash; Soft you now,
The fair Ophelia! &amp;ndash; Nymph, in thy orisons
Be all my sins remembered.&lt;/p></description></item><item><title>Dear diary</title><link>http://fundor333.com/cyberlavandatea/post/2015-01-27-dear-diary/</link><pubDate>Tue, 27 Jan 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-01-27-dear-diary/</guid><description>&lt;p>What is it with that Mary girl? Dragging me to school every day. As if I had a choice. What you don&amp;rsquo;t hear in those nursery rhymes is that she starves me if I don&amp;rsquo;t go to school with her; it&amp;rsquo;s the only way I can stay alive! I&amp;rsquo;m thinking about being adopted by Little Bo Peep, sure I may get lost, but anything is better than being with Mary and those little brats at school (shudder, shudder).&lt;/p></description></item><item><title>Soccer</title><link>http://fundor333.com/cyberlavandatea/post/2015-01-19-soccer/</link><pubDate>Mon, 19 Jan 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-01-19-soccer/</guid><description>&lt;p>From Wikipedia:&lt;/p>
&lt;p>Association football, more commonly known as football or soccer,[2] is a sport played between two teams of eleven players with a spherical ball. It is played by 250 million players in over 200 countries, making it the world&amp;rsquo;s most popular sport.[3][4][5][6] The game is played on a rectangular field with a goal at each end. The object of the game is to score by getting the ball into the opposing goal.&lt;/p></description></item><item><title>Pirates arrrr</title><link>http://fundor333.com/cyberlavandatea/post/2015-01-15-pirates/</link><pubDate>Thu, 15 Jan 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-01-15-pirates/</guid><description>&lt;p>Piracy is typically an act of robbery or criminal violence at sea. The term can include acts committed on land, in the air, or in other major bodies of water or on a shore. It does not normally include crimes committed against persons traveling on the same vessel as the perpetrator (e.g. one passenger stealing from others on the same vessel). The term has been used throughout history to refer to raids across land borders by non-state agents.&lt;/p></description></item><item><title>First post!</title><link>http://fundor333.com/cyberlavandatea/post/2015-01-04-first-post/</link><pubDate>Mon, 05 Jan 2015 00:00:00 +0000</pubDate><guid>http://fundor333.com/cyberlavandatea/post/2015-01-04-first-post/</guid><description>&lt;p>This is my first post, how exciting!&lt;/p></description></item></channel></rss>