corpus.blog
Most cited
Talked about
Blogs
41554 blogs · [ { "id": "01a08c63-443f-7315-975d-f84d3726b17e", "title": "tts-bookmarklet: inject a listen button on every paragraph", "url": "https://wip.tf/posts/bookmarklet-inject-text-to-speech-buttons-page-paragraphs/", "published_at": "2026-07-31T02:27:23+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d37b92cad", "title": "Radio-gaga: turning a cheap Panasonic radio into a toddler jukebox controller", "url": "https://wip.tf/posts/turning-a-cheap-panasonic-radio-into-a-toddler-jukebox-controller/", "published_at": "2026-07-08T04:59:46+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d37c18c8c", "title": "Turn your favorite RSS feeds into podcasts", "url": "https://wip.tf/posts/turn-your-favorite-rss-feeds-into-podcasts/", "published_at": "2026-04-20T02:03:25+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d38a7408b", "title": "This blog is also a podcast", "url": "https://wip.tf/posts/this-blog-is-a-podcast/", "published_at": "2026-04-10T03:01:31+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d38c23ece", "title": "Building a trilingual kid alphabet poster", "url": "https://wip.tf/posts/building-a-trilingual-kid-alphabet/", "published_at": "2026-03-17T05:23:46+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d395a1f55", "title": "TGIF-Claude: visualizing Claude Pro usage relative to the week", "url": "https://wip.tf/posts/tgif-claude-visualizing-claude-pro-usage-relative-to-the-week/", "published_at": "2026-03-06T02:11:11+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3960ced7", "title": "Badging in at the gym with my Garmin watch", "url": "https://wip.tf/posts/badging-gym-garmin-watch/", "published_at": "2026-02-16T11:45:47+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3a05d188", "title": "Controlling an air-gapped robot vacuum from Home Assistant using synthesized speech", "url": "https://wip.tf/posts/controlling-an-air-gapped-robot-vacuum-from-home-assistant-using-synthesized-speech/", "published_at": "2026-01-27T03:20:22+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3a32f07a", "title": "Fixing the Litter-Robot's SmartScale weight tracking with Home Assistant", "url": "https://wip.tf/posts/fixing-litter-robot-weight-tracking-multi-cat/", "published_at": "2026-01-17T03:02:07+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3a48b13c", "title": "Mapping my reading log by author birthplace", "url": "https://wip.tf/posts/map-your-read-books-list-by-author-birthplace/", "published_at": "2025-12-30T20:40:19+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3ae2eda0", "title": "Building Téléfonefix - baby's first international landline", "url": "https://wip.tf/posts/telefonefix-building-babys-first-international-landline/", "published_at": "2025-09-23T09:31:06+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3b9d2b1c", "title": "Jira compliant and Claude powered commits", "url": "https://wip.tf/posts/jira-claude-commit/", "published_at": "2025-08-13T03:47:26+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3c645b08", "title": "Lookup and insert Jira ticket IDs in Vim", "url": "https://wip.tf/posts/vim-jira/", "published_at": "2025-06-26T02:01:22+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3d062797", "title": "Listen to this article", "url": "https://wip.tf/posts/listen-to-this-article/", "published_at": "2025-06-07T01:50:10+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3d81c641", "title": "My self-hosted TextToSpeech setup", "url": "https://wip.tf/posts/tts-setup/", "published_at": "2025-04-14T00:33:45+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3e23990c", "title": "XSLT - make your RSS feed look like your front page", "url": "https://wip.tf/posts/rss-xsl/", "published_at": "2024-07-11T02:18:24+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3efffab5", "title": "RSS/Atom feed of Docker image pushes to DockerHub", "url": "https://wip.tf/posts/dockerrss/", "published_at": "2023-03-08T02:16:44+00:00" }, { "id": "01a08c63-443f-7315-975d-f84d3fea2f95", "title": "Bistrobot: orchestrating cat food dispensing with Raspberry Pies", "url": "https://wip.tf/posts/bistrobot-orchestrating-cat-foot-dispensing-raspberry-pi/", "published_at": "2023-02-02T03:52:55+00:00" } ] posts
Claim your blog
Back to WIP In Progress…
Blog · corpus.blog/blogs/wip.tf/posts
WIP In Progress…
wip.tf
2026
tts-bookmarklet: inject a listen button on every paragraph
original ↗
31 Jul 2026
Radio-gaga: turning a cheap Panasonic radio into a toddler jukebox controller
original ↗
8 Jul 2026
Turn your favorite RSS feeds into podcasts
original ↗
20 Apr 2026
This blog is also a podcast
original ↗
10 Apr 2026
Building a trilingual kid alphabet poster
original ↗
17 Mar 2026
TGIF-Claude: visualizing Claude Pro usage relative to the week
original ↗
6 Mar 2026
Badging in at the gym with my Garmin watch
original ↗
16 Feb 2026
Controlling an air-gapped robot vacuum from Home Assistant using synthesized speech
original ↗
27 Jan 2026
Fixing the Litter-Robot's SmartScale weight tracking with Home Assistant
original ↗
17 Jan 2026
2025
Mapping my reading log by author birthplace
original ↗
30 Dec 2025
Building Téléfonefix - baby's first international landline
original ↗
23 Sept 2025
Jira compliant and Claude powered commits
original ↗
13 Aug 2025
Lookup and insert Jira ticket IDs in Vim
original ↗
26 Jun 2025
Listen to this article
original ↗
7 Jun 2025
My self-hosted TextToSpeech setup
original ↗
14 Apr 2025
2024
XSLT - make your RSS feed look like your front page
original ↗
11 Jul 2024
2023
RSS/Atom feed of Docker image pushes to DockerHub
original ↗
8 Mar 2023
Bistrobot: orchestrating cat food dispensing with Raspberry Pies
original ↗
2 Feb 2023