Projects
Amateur Radio Logbook
BI9CKE QSL Logbook
This is my personal station logbook. The frontend is hosted on GitHub Pages, with the management backend on Cloudflare.
I haven’t had time to import my records yet, so the contacts currently shown are test data.
- Logs and cards: search contacts, browse QSL cards, track paper and LoTW confirmations, and import or export ADIF files.
- Maps and statistics: explore contact coverage, activity over time, and progress across DXCC entities and grid squares.
- Station tools: check propagation conditions and calculate satellite tracks, passes and Doppler shifts before getting on the air.
The public interface supports Chinese and English, mobile layouts and light/dark themes. Cloudflare Workers and D1 handle log management and station settings.
Open the logbook · Source on GitHub
Newspaper
AI news collection and delivery
AI slop is multiplying at an absurd rate, making it harder to find information efficiently and reliably. Finding sources, cross-checking and deduplicating stories, and assessing importance and reliability can all be handed to AI. Spending some tokens saves a lot of searching and asking around myself.
I recently picked up a 2-vCPU, 2-GB VPS from Huawei Cloud for RMB 36 for eighteen months. This is the first project I’ve put on it: collect and organize news by section on a schedule, build webpages, a database and Markdown documents, then deliver the results through email and a Telegram bot.
I could have pointed the domain straight at the VPS, but a mainland China server means dealing with ICP filing. Too much hassle. Instead, once a task finishes building the site, it pushes the result to a GitHub repository. The domain points to GitHub Pages, which also makes access more stable.
I’m starting to feel a bit guilty about how much free hosting I’m getting out of GitHub, honestly (
- Configurable editions: choose topics, sources and daily, weekly or monthly schedules.
- Reading and delivery: archive search, RSS, Markdown and JSON downloads, plus email and Telegram delivery.
- Independent operation: generation does not need a local computer or an Agent chat window left open. The program, personal configuration and published site are maintained separately.
- Why this over scheduled Harness tasks? Use ordinary code for the parts that ordinary code can handle, and summarize each section separately to avoid huge contexts. Basically: save tokens.
My news site currently has two main groups: “Technology & Politics” and “ACGN.” The generator is open source, so you can configure your own news sections and requirements. The separate site repository contains the published pages.
Read Newspaper · Generator on GitHub · Published site on GitHub
Ruri
A minimal, flat, lightweight Hugo theme for personal blogs
This blog runs on Ruri, named after the Japanese word for lapis lazuli. I used Reimu for a long time and wanted to give the pages a cleaner look. When I first got into personal websites at fourteen, every configuration change felt impossibly hard. Fortunately, this is the AI era: with the powers of GPT and DeepSeek, I rebuilt the layout and interactions on top of Reimu. It worked well enough for my own use, so I separated out my personal content and settings and released it as a standalone theme (although I think anyone can make their own custom theme these days).
It mainly uses Hugo templates, vanilla JavaScript and CSS/SCSS, without adding a frontend framework.
- Pages and reading: responsive layouts, light/dark themes, collapsible contents, code copying and folding, image lightboxes, KaTeX math and Mermaid diagrams.
- Music and navigation: a floating player with playlists, lyrics, volume and playback order controls. Music keeps playing while navigating between pages within the site.
- Blog essentials: Pagefind full-text search, RSS, Waline comments, friend links, an archive timeline and a writing heatmap, plus optional arts and culture collections and project introduction pages.
- Configuration and languages: Simplified Chinese, Traditional Chinese, English and Japanese interfaces. Personal copy, menus and external services stay in your own site configuration; the theme includes generic examples and Chinese/English documentation.
Install through either Hugo Modules or a Git submodule. The theme code is MIT licensed, with Reimu attribution and the relevant license notices retained.
Sponsor / I took a taxi home for sixty or seventy dollars!


When will I have a drink and discuss the details again?