Skip to main content
[BurgeonLab]

Tech Enthusiast's Logbook

Writing about Hugo, web dev, open source & IndieWeb experiments

=+++=+++++++++++++=====+==================~+**+&@B*@%~#-+*~=~-*~+#-=##M&&M@8$$$@@%M$B&8%#B+&8B$M-*@*
=+++++++++++++++++++============~=======~~-~=+W$@%#W&=M:=+~=*~=#~=*~#*MW8#%&%%%8%&*@&M&W*W=MW&*~:=*#
=+++++=+++++++++=+=+============~=======-"^^^^:WB8&#W=M:~=-+==M*~-+=#W8W8W%&8W8W8#*%WMW&*W~*+*~~,+~=
========++++++++================~======~^`:~=~,^M8B*B+&--+=8+*W*+~MW&@8%$&$B@B@&BW+@8@@$W@+%MMM#-*+,
=======~~~==========~~~~~~~----~~~~~~~~^^~====~^"8%+8*&~:+~&*+W===M#8B&%@M%&B%B&$W*@8@@$W$+%M%M#=%B~
====~~~~~~=============~~~~----~~~~~~~:`-=-:~::"`*8&~+W~,+-M~#W~+=#~MM&BBMBBBB%8BWMB8@@@WB#%M8W#*&8M
=====~~~~~===========~=~~~~---~-~~~~~~""=++==:-:`:+*~:+~,+,~:=~:~:::~~~~~~=====~=~~==++=====~===~~~~
~=====~=~~===~=~~=~====~~~~-~---~~~~~~^:==~=-:~,`,===,++~+,~-=~:~:~-~++==~====~~===~~+++=+==~===~~==
~============~~~~=~+=========~~=~~~==~^`:=~~:,:^`"=+=,#M~+,--=~-~:=-=+===~====~~=~~~~===~=~~~~~~--~~
~=====~===========~====~~~~~~~~~~~~==-^`^-==~,"``,**+,%#-=,=-:,*=-8M%%&M#+M*#MW&W~-M#-::::::::::,,::
~~~~~~-~~~~~~~~~~--~~--~--~~~~~~~--~~,^``^,,^````^~~--+~:--~---~~~=~-:,,-MMMWWMMW=~*~**#~#+M=~#*-:+~
~~~-::,::----:::,,,::,:,,:-::-==+~-=~:,```""^````^:-::::,,::,,::,:::,,"":MMMMMMWW+~+-#W&+W#&*=&#~-W*
~~~::,,,::---:,,,,,:,,,,,::::-++*+*---::^``"`````^:,:,,,,,,,,,,,,::,,"^",~====++*+~+~#M8+#*W+~W#~-M*
~~-:,,",:::::,,,,,,:,",,,::,,-++*#-::++--:`^^`````:,:,,,"",,,,,,,,,,"^^""""",,,"~*=+=%8&*MM&~*&M+=%%
---::::::,:,,,,",,:~==:,,,,,,-==*#::-+=+++:^,`````::::-,"","""",,,""^``^^^^"",,,-+=*=%88#W&&+MWM+=&M
,,,::-~~-~:,,"""":::-*%,,,,,,:~+#=::=+~=*++-,`^```~~:-~:"""",",,""""^``````^"",,:=+#+$@@&B@BMB$@WW@%
,"",:,:--::""""""-~"":=:""""",:~#--:++~+*+=-,`:^``-:::~-"""",,,,,"""^``````^^",":=*#+$$$M&$@W@$@&W@@
*:=*-,,,:-:,"",:-~%-,,-,""""",,-*:::++=++*+-`^-``"-:-:~-,""",,,,,""^```````^^","-++**$$$=M$$M@@$&W$$
M*M8%8W*+*:~~=~++-=*-,-=~=~~~~~+*:--*++~+*=,`~~,`:~----:::::::::,,,",-^^^^^^"""",==~~#*+:-++:~~==*&&
+#==+W8W+,:~==-=*--:,"~+++==++=+~::~+*=-++:^"+=~,-~===~==========~-,:~::--::::-::*8*-#*+:-=~=~=:=++~
,-*+~*W#+::-~~~+~---:,=+=+====++-::+*=:-=:`^-==~~-~===~~~---::,,,,:,--^:-~-::-~-:-=::==~,:~~~~-~+**=
,^**~+=*+W~---~+~:=~~,=========*:-:*+-:-,`^~-+=~-,::,,,,,,,::,,,,::-,"",:-:::---:-*-:*W+,:~~~*+==~~~
^:",,",=+*==~~=+-:*+-"+==~~~~~=*:-:++--"`^:=-+~-~:,--:::::::::~====~:,""",,,,,::,-W~=M~+:~M#*-,++===
,^^^"^,=+~=+++++-:==:"*+++++++==::~+=,^`,+++=:~=-~:++++++++++====*=+~~~~~==~-:--~~=====-:-***~:MMMMM
",:~~~~*+~====+=-:::,"*======-*~-:++^"^:+*=*+--~:",*+***++++++++++*++===####=~~==++++==-~~~~~~:++===
MMM#****+~==~~==-::,,,#====+=,#--,~,`^~=+++++-=~--"********************+**##*+==+++++==-====~=:=+===
@@@@@B@W+W%%88M=*""""~M+++++:"*:::+~"=++***==-=:-=,+++++*******************+++++++++++=~++====:=====
@BBB%%8M=*M#**+=***#M8%%%B%-",#:-:=~-+++*=**~~-~=+-~+++++++++++++++++++++++++++****++==-~~~~~=:+++++
M##MMWWM=W%%B@M=%%%%%%%BB8=,^"*--:~~~****++*~--:~=,8B%8%8&8&&WWWWM&WWM###*#**++++++++==-=~~~-=:++===
@B@@@@BM=W88&&M#8%88%%B8%W"``^=~,,:~~*++++=--:--==-&MWWWW8%8%%B%88%%8WMWWW%BB%%%88888W=+M*+*+=:++***
@B%888%M~&%%%%%%8888%&&@$B,^^^*=::,+-==+=~==~:-~++:M%8%8&8%88%%8%%%&&WWWMW&8888&8&WW&W~*WM=+#=:*####
$@@B%8%*~W888&&&&8%&&B@@@M^^``~*-::+-==+~=~-~:~,~+=-&B%888%BBBB%B@%%8%8&WWW&&88&W&&&&M~+###**=:*****
$@B%8WM**MMWWWWW&#W8%BBB%B,`^^"#=,-=+,,,""^^^``:=++~-+&B$@BBB88M88888&&M8%WMM&8W&WM##+:~*+***=:*****
B@@B%888&WWWWWWM*W%BBB8B8WM:^^^:+:::~:`````````~*+#*"`^:*%%%888888&888MW%%##*###~~****+++****~:*****
&&&&&&WWWWW&&M*#8%&8%8BBM%B#&+,^`""^,^````````^:~~=~`````^~&B8BB%8%8%%&%8BMW#++WB8==+***++++*~,+****
&WMWMMMMMW&W**M%&8%%%B8&88W*W88,=````````````^^"```````````^,*%&8W&&WM+,:=+&WW#+MB@W-:+****+=-:~=++*
MMMMWMMW&M*M8B888BW%%&8%8W%&&%8-W:,::-^````^``````````````````"WB#*&=-:*W#*M*~-+*WW&8#:-++**+===++**
WWWWW88#**&8&&8B&8%&&88&%%%BB%B~88~~--"````=8M~,^-:^```````````^M&*%B8+=:~++*~#M*+M%%%&*:-=+++++++++
WWW88M**M%%%8%%8@%&%%BW8%W88&88:M%::-:"````*&&8&8-,,~,^`````````~B*#B%MM+-:%%,#%%*M##W&%%*,-++++++++
&%%M##W8%8&8%8BB8%B%8%8W88W&WWW:M&:^"^^````:=+*++-:,+***~,"^^"^^*%=~8&88%#,&M,=W&M##MM*+#&8+,-++++++
%WMMW%%8%%%88B%888&WMWMMMMMMMW&,W&=```````^#WMMM=~=MM##*##MMMWWWMW#MM8%M%#,="*%&&&88#*&*+#*#+-,~*++*
WW&%B%%B8B8@%8&W&W&MMM&WWMMMMWW*MMM```````^&&8%W&&&WW&&8=``^^^"M&WWW=M8M-,~*W&&%WW8%8&MWWM###M#:-+**
8%B%B%&MWWWWW####MMM*M&##M##MW&W8WM^``````^*&WM&&&88%%&*``````*%@@@&+~:,~MBB%8BBB8&8W88MMMM+M***=-++
B%8&8%WWW##**++***+*++~-,"^^^",:+WM^``````^~8%8&W%B%888^`````,&%WB8W*=&M#BB%%&%%B%8&M&8&WMW8#*MM*#==
WW&WM*#W*#####M+*M*~-"^"",:--,,"^"~^``````-:WM&MWWMW8W~`````"&W8W&MM*=#=#8B%&8W88888%M&8WW*MM##W#+MW
MMM*#M***#*#M#***+-"^"-+####WMM#~,"^``````#-#8WW&%&W%8^````^&B@&+#&%WM~~+=~-~:+##%%88&WW&&&W*&&#*#**
####++*#**M#=+:^:,^"-+M**MMW#*MMM+-,``````*==W88&8%BW-`````+8%8=:#%W*M-:,`""""""^^,+&%%W&%%8&M*&&M&M
*#M*~+****++*:^,`^"~#M#*M#M#WMW&WW+:``````M#+&%&8&WW-`````,W8&=-WM*="~+^~=WW&B&M++:"^:#W%88B%%%M*M#*
##+=****#*==#:,^",+###***W###**#W+=,`````^8&=M%W#&&&M`````W%M~~M**,^,+#~&&%8BB%%8B8M=,`:W&W&8&&MM*MW
#+***#**M#**=#-`"=MM+##*MMWMM*#M*M#,`````^=M+=8W&8WB,````-&*~+#*+^"-#8#+M8W%%&&8%%&M&&~"^=8WW&&8&W#M
##M#***+*+==*#^^:MM#MW#*#MWM#MW##*#``````":##~W&MMM-`````*+~MW*+^,#&88W*+MW&&&88&W8W&&&*,`-W&WW&&&MW
*******+**+*#=`"+W#=+#*M#*W#+##M*M~```````-~&+#&WW*````^~~-&&=+^,+88W&8#+WWB8%M&&%8#%B%%W,`-WWW#M&&&
***+*+**+###M+`"*MM**+M#*+*M*#*+M#,`````,`":==+*#&-```"=~^":~+""+&M+&88&+*M&8B8B&8WW&8&W&+"`+MM#W&&&
##***++++***=~`,##*###**M#::~~=#MM^````^M"^:~"~MW*```:=:^``,,`^-#W88&&&&#+&MW8#MM&%888W8*W*^^W88#**M
**+~~+*++*##M=`:##***#~=+~~~^^,~+=`````,W:`,,^,+WM`^~=,````--^"#B88M&&W8W#+*WW8&W&%8&8&88%8-`=8&WWWW
=**+##M##M+**=`,++#M#*+##~-~-::++~`````:*:`^`^^":=*~=*W""-::#`,88&8%8%B%BMM*&W&%%8%B%B%%W&#*^^WWMMWW
-+++=**++*++#=`,##MM*#*##~,`^,~M*~`````:+-^``~+~=,:,"~=#W%W:=`-8W&&MWMWW&W#M*MWWMWWMW&8&%&*W"`*WW88W
=+*+=*####*#**^"=*##***+#:,^,~+*+-`````,::`^"*+~~,",#WWW&%&:+^-WMWMW&WMW&WW#+:~M&%&WW&&WMMMM:`~MM&&M
=~+*###=+**##*:^-**#M#M*~,,^,WWW&*`````~W,`",,,=:,:"M&#&8WW,~`-W&&W8%&&88WM+~:-W&WMW888WMMW&-`-WMMWM
++*#*++~=+****#^:+#*#MMM*-,,-W#M&*`````-+^^":^,^*&*"=#&M*#&-~`:88&W88WMM**M#****&#WM#**#MM#M-`-MM###
+**#*##***#*=++-"~##**M*=~^+W##&W*`````~:^"^:~-=*#:"*##*#MW=-`,M%%WMMMWWMW&#&&8BWW&8%%%%8&WM:`=WMW*#
****+=~*+###*##+",=*+++**=~~~-~=#+^````"^^+~:,^":,"*88&&MWW+-,"~M&M*#WMMMMWM&WM8%&8&&#WWWMMW"`*W%&W&
#*###*#=#MM#+=+++":+=#+*##MM&&&#M~`````^`*###-"",:+MWW%WW%8&W+`-&&WWMWWW88WWW#**#*+MWW88%%%#^"M#+W&&
+=~++=+**+~#M#####,,=*#*W*####MMM"``````+8&8W&W##W###**MWW&8&M:^~W888WWMWMWW&WW8&%8WWWWW88&,`*&&WM+*
##+==*==++*+++*#*+*~^-MM#*#*WW**M=~^```"&&888&8M&8&&%8WWW&WM8&#"~~M#MW&W&&8%8&8&WM&MWM&&MW+^,8&8%%%B
*+-*MM*+**###+~=++*#~,^-*WW##**=M#-````^+MMW##MM&#**MWM#*&&&W%8#"~#&&MWMM##*M#W&&WW8%BB%%*^"M8&MMWMW
+++==****~=*#*++##*+==~,`^,:-~~:^^^```^^"~MW8&W&&M*+###MMMM*=+MW#":+*MWMWWMWW&##W&W#*=*M~^"M&8B&&B%*
~~~+#~~++****++=:-~~-::--~-,,,"""--^^^^^^",:M&W&W&WM#W&WM#W##MMMMW-^==+++*+**#+#W&&&W&#:`"##=*W&W#&W
++++*+--,-~~~~~~+====~~==*###=-~~-"^`^^^^^^^":-+MMWWM+=+++*+*##+*~*-,"=*MM#*~~~~##W#+:^^~+#&#*W&MWW&
##MM##***#**+*****#MM+*#MM#MMW#**+"^^^^^^^^^^^"-*##+#W&WW8&&W&8&&MWMW=,^,-+###M+=~:"`"=*M*#*++**#*##
+~~==+=++==~+=~=++++*#++****++*+*+,"^^^^^^^^^=MW&M*#MMMW8WW88&MWW8%%%%8#-,^^`^^^``^-~M8%&88WM*#M&WWW
#*==~++=+=+++*#*+##*++*=+*M*++#M*:,,,,,,:~=~~==++=+#&M*=#8&WWWM8&&&W*+=#MM&M=#W#~-:~#M#MWM=*MMMW88%&
==+++++++=~~=+*#M#*++=++*+*MMM*+=~,,,,,,:-=+==-*+++*=M&&&M#**M#WWM#*##&8&M*#W8888W8&MW&WW8%88*#+MMW&
ASCII art of Naty on her vintage Puch road bike

Welcome to my personal website. I’m Naty, a tech dabbler, third-culture kid, serial hobbyist, and lifelong learner.

BurgeonLab is my Internet home, where I document mostly geeky interests and other enlightenments. This is my passion project and a work in progress; so expect regular changes.

I am keen on data privacy, self-hosting, technical writing, specialty coffee, street photography, fountain pens, Formula 1, and more.

My other pseudonyms are @eclecticpassions and @aperture2iris.

Thank you for checking out my corner of the Internet. Feel free to say hi!

Embracing IndieWeb

Learn how and why I'm part of the small web

Ever since becoming aware of content ownership, enshittification, and the IndieWeb in 2025; I’m gradually integrating small web principles and IndieWeb building blocks into my site.

For instance, my site receives webmentions if your site supports sending them; otherwise, feel free to send me a webmention manually! Public webmention display isn’t supported yet, but I’ll be notified if you mention something from my site.

Some other popular feature in small web communities I’ve implement are:

  • Webrings—a collection of sites linked serially around some theme. You can find the webrings I’m part of in the expandable list in the footer and explore other sites with the navigational links.
  • Web badges (aka 88x31 buttons) are also down there; hover to see a tooltip or click to explore.
  • And while you’re at it, feel free to sign my guestbook!

In the last week of 2025, BurgeonLab gained full Micropub support through Indiekit that I’m self-hosting on my Raspberry Pi! Explore content tagged with: #indieweb, #indiekit to learn more.

If you want to read more about the IndieWeb community, here are some articles for you:

Noticeboard

Show notices

July 17, 2026: I am starting a new time zone / region for Homebrew Website Club, a virtual event for everyone to talk all things personal websites and IndieWeb! Check out these links for more details:

January 11, 2026: I’m doing the #100DaysToOffload blogging challenge!

Counter: 69/100 Remaining: 174d
69%
Newest: Jul-20Start: Jan-11

I’m in the process of a serious overhaul of my Hugo theme’s CSS. There may be some breakage in the meantime, apologies!

**I’m collecting feedback to make the blog better in 2026. As a reader, your opinion matters to me. Could you take my 1–2 minute anonymous questionnaire? Thank you!

Notes Stream

I write notes / microblogs for sharing shorter content; like quick status updates or notes on a topic that probably won’t become a full blog article. Click on the bar to open a preview or the permalink icon to view the full note.

Today I brewed this special coffee with the Tsubame Kalita Wave 155 (flat bottom dripper) + 1Zpresso ZP6 Special hand grinder (4.8 clicks):

  • Roaster: ...

Thank you so much, kind stranger, for being my first secret patron on Liberapay! I am speechless and so grateful for your generosity and support.

If I had ...

I have some exciting news to share—I am starting a new edition of the regular Homebrew Website Club event, catering to those living in Asian time zones! ...

Writers and bloggers, does this happen to you?

You sit down to write a weeknote or some journal entry, but suddenly, one of the topics becomes really long ...

As an Indiekit supporter and user, I’m really appreciative of Paul for maintaining this open source project. After a short hiatus, he’s back to ...

View more notes »

Latest Weeknotes

Here are my latest weeknotes. They’re a type of post that I publish weekly and sometimes covers less technical topics.
View more weeknotes »

Latest Blogs

Blog articles are how I usually share my technical tinkering logs. I plan to write more non-technical topics, aka personal or casual posts in the future; but it will probably be on a separate domain (I will share it here when it is ready!)

How to Prevent Hugo From Publishing Draft Posts Accidentally

See how I added a pre-build step using a Bash script in my Hugo deployment workflow to check for the draft status of Markdown content. By using stricter linting rules than Hugo’s default draft behaviour, it can catch and prevent drafts from being accidentally published.

Offline LanguageTool: Free Open Source Grammarly Alternative

As a long-time user of LanguageTool’s offline server on macOS, I thought I’d share how I set it up. It’s a great way to get a pretty accurate grammar and spell checking / proofreading software without relying on online services. I’ll go through how to configure this open source tool, get extra optional improvements like n-gram data processing, and script shortcuts.
View more posts »

Top 10

The most popular pages over the past 30 days based on unique visits. (Privacy-focused analytics, no cookies, last updated on 2026-07-01.)

View all content »
Enjoying BurgeonLab? If my content made a difference, a small contribution would mean a lot. Your support spurs me on to keep creating!
Give a tip » Help with hosting »

Enter keyword (use "quotes" to find exact term):