The best Hacker News stories from Show from the past day
Latest posts:
Show HN: A Lisp where each function call runs a Docker container
Show HN: Mini-Diarium - An encrypted, local, cross-platform journaling app
Show HN: Ghostty-based terminal with vertical tabs and notifications
I run a lot of Claude Code and Codex sessions in parallel. I was using Ghostty with a bunch of split panes, and relying on native macOS notifications to know when an agent needed me. But Claude Code's notification body is always just "Claude is waiting for your input" with no context, and with enough tabs open, I couldn't even read the titles anymore.<p>I tried a few coding orchestrators but most of them were Electron/Tauri apps and the performance bugged me. I also just prefer the terminal since GUI orchestrators lock you into their workflow. So I built cmux as a native macOS app in Swift/AppKit. It uses libghostty for terminal rendering and reads your existing Ghostty config for themes, fonts, colors, and more.<p>The main additions are the sidebar and notification system. The sidebar has vertical tabs that show git branch, working directory, listening ports, and the latest notification text for each workspace. The notification system picks up terminal sequences (OSC 9/99/777) and has a CLI (cmux notify) you can wire into agent hooks for Claude Code, OpenCode, etc. When an agent is waiting, its pane gets a blue ring and the tab lights up in the sidebar, so I can tell which one needs me across splits and tabs. Cmd+Shift+U jumps to the most recent unread.<p>The in-app browser has a scriptable API ported from agent-browser [1]. Agents can snapshot the accessibility tree, get element refs, click, fill forms, evaluate JS, and read console logs. You can split a browser pane next to your terminal and have Claude Code interact with your dev server directly.<p>Everything is scriptable through the CLI and socket API – create workspaces/tabs, split panes, send keystrokes, open URLs in the browser.<p>Demo video: <a href="https://www.youtube.com/watch?v=i-WxO5YUTOs" rel="nofollow">https://www.youtube.com/watch?v=i-WxO5YUTOs</a><p>Repo (AGPL): <a href="https://github.com/manaflow-ai/cmux" rel="nofollow">https://github.com/manaflow-ai/cmux</a><p>[1] <a href="https://github.com/vercel-labs/agent-browser" rel="nofollow">https://github.com/vercel-labs/agent-browser</a>
Show HN: A physically-based GPU ray tracer written in Julia
We ported pbrt-v4 to Julia and built it into a Makie backend. Any Makie plot can now be rendered with physically-based path tracing.<p>Julia compiles user-defined physics directly into GPU kernels, so anyone can extend the ray tracer with new materials and media - a black hole with gravitational lensing is ~200 lines of Julia.<p>Runs on AMD, NVIDIA, and CPU via KernelAbstractions.jl, with Metal coming soon.<p>Demo scenes: github.com/SimonDanisch/RayDemo
Show HN: Micasa – track your house from the terminal
micasa is a terminal UI that helps you track home stuff, in a single SQLite file. No cloud, no
account, no subscription. Backup with cp.<p>I built it because I was tired of losing track of everything in notes apps, and "I'll remember
that"s. When do I need to clean the dishwasher filter? What's the best quote for a complete
overhaul of the backyard. Oops, found some mold behind the trim, need to address that ASAP. That
sort of stuff.<p>Another reason I made micasa was to build a (hopefully useful) low-stakes personal project where
the code was written entirely by AI. I still review the code and click the merge button, but 99%
of the programming was done with an agent.<p>Here are some things I think make it worth checking out:<p>- Vim-style modal UI. Nav mode to browse, edit mode to change. Multicolumn sort, fuzzy-jump to
columns, pin-and-filter rows, hide columns you don't need, drill into related records (like
quotes for a project). Much of the spirit of the design and some of the actual design choices
is and are inspired by VisiData. You should check that out too.
- Local LLM chat. Definitely a gimmick, but I am trying preempt "Yeah, but does it AI?"-style
conversations. This is an optional feature and you can simply pretend it doesn't exist. All
features work without it.
- Single-file SQLite-based architecture. Document attachments (manuals, receipts, photos) are
stored as BLOBs in the same SQLite database. One file is the whole app state. If you think
this won't scale, you're right. It's pretty damn easy to work with though.
- Pure Go, zero CGO. Built on Charmbracelet for the TUI and GORM + go-sqlite for the database.
Charm makes pretty nice TUIs, and this was my first time using it.<p>Try it with sample data:
go install github.com/cpcloud/micasa/cmd/micasa@latest && micasa --demo<p>If you're insane you can also run micasa --demo --years 1000 to generate 1000 years worth of
demo data. Not sure what house would last that long, but hey, you do you.
Show HN: Pg-typesafe – Strongly typed queries for PostgreSQL and TypeScript
Throughout my career, I tried many tools to query PostgreSQL, and in the end, concluded that for what I do, the simplest is almost always the best: raw SQL queries.<p>Until now, I typed the results manually and relied on tests to catch problems. While this is OK in e.g., GoLang, it is quite annoying in TypeScript. First, because of the more powerful type system (it's easier to guess that updated_at is a date than it is to guess whether it's nullable or not), second, because of idiosyncrasies (INT4s are deserialised as JS numbers, but INT8s are deserialised as strings).<p>So I wrote pg-typesafe, with the goal of it being the less burdensome: you call queries exactly the same way as you would call node-pg, and they are fully typed.<p>It's very new, but I'm already using it in a large-ish project, where it found several bugs and footguns, and also allowed me to remove many manual type definitions.
Show HN: VectorNest responsive web-based SVG editor
I’ve just released VectorNest — an open-source, browser-based SVG editor.<p>If you have an SVG and need quick edits (paths, alignment, small fixes, animations, LLM assistance) without installing software, this is for you.<p>Try the demo: <a href="https://ekrsulov.github.io/vectornest/" rel="nofollow">https://ekrsulov.github.io/vectornest/</a>
GitHub repo: <a href="https://github.com/ekrsulov/vectornest" rel="nofollow">https://github.com/ekrsulov/vectornest</a><p>Feedback, issues and contributions are welcome.
Show HN: CEL by Example
Show HN: CEL by Example
Show HN: Rebrain.gg – Doom learn, don't doom scroll
Hi HN,<p>I built <a href="https://rebrain.gg" rel="nofollow">https://rebrain.gg</a>. It's a website which is intended to help you learn new things.<p>I built it for two reasons:<p>1. To play around with different ways of interacting with a LLM. Instead of a standard chat conversation, the LLM returns question forms the user can directly interact with (and use to continue the conversation with the LLM).<p>2. Because I thought it would be cool to have a site dedicated to interactive educational content instead of purely consuming content (which I do too much).<p>An example of a (useful-for-me) interactive conversation is: <a href="https://rebrain.gg/conversations/6" rel="nofollow">https://rebrain.gg/conversations/6</a>. In it I'm learning how to use the `find` bash command. (Who ever knew to exclude a directory from a look-up you need to do `find . -path <path> -exclude -o <what you want to look for>`, where `-o` stands for "otherwise"!)<p>Still very early on, so interested in and open to any feedback.<p>Thanks!
Show HN: Rebrain.gg – Doom learn, don't doom scroll
Hi HN,<p>I built <a href="https://rebrain.gg" rel="nofollow">https://rebrain.gg</a>. It's a website which is intended to help you learn new things.<p>I built it for two reasons:<p>1. To play around with different ways of interacting with a LLM. Instead of a standard chat conversation, the LLM returns question forms the user can directly interact with (and use to continue the conversation with the LLM).<p>2. Because I thought it would be cool to have a site dedicated to interactive educational content instead of purely consuming content (which I do too much).<p>An example of a (useful-for-me) interactive conversation is: <a href="https://rebrain.gg/conversations/6" rel="nofollow">https://rebrain.gg/conversations/6</a>. In it I'm learning how to use the `find` bash command. (Who ever knew to exclude a directory from a look-up you need to do `find . -path <path> -exclude -o <what you want to look for>`, where `-o` stands for "otherwise"!)<p>Still very early on, so interested in and open to any feedback.<p>Thanks!
Show HN: I'm launching a LPFM radio station
I've been working on creating a Low Power FM radio station for the east San Fernando Valley of Los Angeles. We are not yet on the broadcast band but our channel will be 95.9FM and our range can been seen on the homepage of our site.<p>KPBJ is a freeform community radio station. Anyone in the area is encouraged to get a timeslot and become a host. We make no curatorial decisions. Its sort of like public access or a college station in that way.<p>This month we launched our internet stream and on-boarded about 60 shows. They are mostly music but there are a few talk shows. We are restricting all shows to monthly time slots for now but this will change in the near future as everyone gets more familiar with the systems involved.<p>All shows are pre-recorded until we can raise the money to get a studio.<p>We have a site secured for our transmitter but we need to fundraise to cover the equipment and build out costs. We will be broadcasting with 100W ERP from a ridgeline in the Verdugos at about 1500ft elevation. The site will need to be off grid so we will need to install a solar system with battery backup. We are planning to sync the station to the transmit site with 802.11ah.<p>I've built all of our web infrastructure using Haskell, NixOS, Terraform, and HTMX: <a href="https://github.com/solomon-b/kpbj.fm" rel="nofollow">https://github.com/solomon-b/kpbj.fm</a><p>This is a pretty substantial project involving a bunch of social and technical challenges and a shoe string budget. I'm feel pretty confident we will pull it off and make it a high impact local radio station.<p>The station is managed by a 501c3 non-profit we created. We are actively seeking fundraising, especially to get our transmit site up and running. If you live in the area or want to contribute in any way then please reach out!
Show HN: I'm launching a LPFM radio station
I've been working on creating a Low Power FM radio station for the east San Fernando Valley of Los Angeles. We are not yet on the broadcast band but our channel will be 95.9FM and our range can been seen on the homepage of our site.<p>KPBJ is a freeform community radio station. Anyone in the area is encouraged to get a timeslot and become a host. We make no curatorial decisions. Its sort of like public access or a college station in that way.<p>This month we launched our internet stream and on-boarded about 60 shows. They are mostly music but there are a few talk shows. We are restricting all shows to monthly time slots for now but this will change in the near future as everyone gets more familiar with the systems involved.<p>All shows are pre-recorded until we can raise the money to get a studio.<p>We have a site secured for our transmitter but we need to fundraise to cover the equipment and build out costs. We will be broadcasting with 100W ERP from a ridgeline in the Verdugos at about 1500ft elevation. The site will need to be off grid so we will need to install a solar system with battery backup. We are planning to sync the station to the transmit site with 802.11ah.<p>I've built all of our web infrastructure using Haskell, NixOS, Terraform, and HTMX: <a href="https://github.com/solomon-b/kpbj.fm" rel="nofollow">https://github.com/solomon-b/kpbj.fm</a><p>This is a pretty substantial project involving a bunch of social and technical challenges and a shoe string budget. I'm feel pretty confident we will pull it off and make it a high impact local radio station.<p>The station is managed by a 501c3 non-profit we created. We are actively seeking fundraising, especially to get our transmit site up and running. If you live in the area or want to contribute in any way then please reach out!
Show HN: Echo, an iOS SSH+mosh client built on Ghostty
Show HN: Echo, an iOS SSH+mosh client built on Ghostty
Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)
Hi HN,<p>I built this because I got tired of the Claude Code CLI hiding details from me.<p>Recent updates have replaced critical output with summaries like "Read 3 files" or "Edited 2 files". To see what actually happened, I was forced to use `--verbose`, which floods the terminal with unreadable JSON and system prompts.<p>I wanted a middle ground: *Full observability without the noise.*<p>`claude-devtools` is a local Electron app that tails the session logs in `~/.claude/` to reconstruct the execution trace in real-time.<p>*Unlike wrappers, it solves the visibility gap in your native terminal workflow:*
1. *Real Diffs:* It shows inline diffs (red/green) the moment files are edited, instead of just a checkmark.
2. *Context Forensics:* It breaks down token usage by File vs Tool Output vs Thinking (so you know exactly why your context window is full).
3. *Agent Trees:* It visualizes sub-agent execution paths which are usually interleaved and confusing in the CLI.<p>It’s 100% local, and works with the logs already on your machine. No API keys required.<p>Repo: <a href="https://github.com/matt1398/claude-devtools" rel="nofollow">https://github.com/matt1398/claude-devtools</a>
(Screenshots and diff viewer demo are in the README)
Show HN: Scanned 1927-1945 Daily USFS Work Diary
My great-grandfather Reuben P. Box was a US Forest Ranger in Northern California, and I've got his daily work diary from 1927-1945, through the depression, WWII, Conservation Corps, and lots of forest fires. I've scanned the entire thing, had Claude help with transcription, indexing, and web site building, and put the whole thing here:<p><a href="https://forestrydiary.com/" rel="nofollow">https://forestrydiary.com/</a><p>This is one of those projects I've sat on for years, but with Claude and Mistral helping with the handwriting recognition, and even helping me write a custom scanning app that would auto scan each page and put it into a database as I assembled everything.<p>As far as I know, this is the only US Forestry Diary that has been fully scanned in and published. I understand that there are other diaries in some collections, but none have been scanned in. I hope this helps somebody. Please let me know if it does.<p>This is the sort of project Claude and AI can help with - A personal project that sits on the shelf forever, but now a reasonable project that can be published in my spare time. I'm not trying to earn money on this, but just improving our knowledge and history just a little bit.
Show HN: Glitchy camera – a circuit-bent camera simulator in the browser
Fun little side project I built after learning about circuit bending in cameras for intentional glitch effect. It is browser based camera toy where you "rewire" CCD pin pairs, turn knobs to get different glitch artefacts in real time to capture as photos. I had fun learning to simulate different pin modes - channel split, hue/phase shifts, horizontal clock delays, colour kill etc.<p>Here are some photos taken: <a href="https://glitchycam.com/gallery" rel="nofollow">https://glitchycam.com/gallery</a><p>I intentionally leaned towards skeuomorphic design for nostalgia. I miss the days where I'd spend hours making a button to look like a physical button. Here I chose to make it look like a "good enough" Teenage Engineering device UI.<p>I tested/used GPT-5.3-Codex to build this from scratch, since there was a lot of hype around it on X. Maybe I wasn’t using it right, but I found it needed a lot of code cleanup at every step and a lot of hand holding along the way. It missed details/nuances and didn't land the skeuomorphic buttons or the interaction polish. It mostly helped with boilerplate where there wasn't much thinking/detailing. It did give a basic starting point for the effect calculations, but didn't really move the needle on the details.<p>Please give it a go and let me know what you think - your photos and video never leave your browser (you can download them if you choose to). Everything is processed locally in your browser (works offline), nothing is uploaded or seen by anyone.
Show HN: Glitchy camera – a circuit-bent camera simulator in the browser
Fun little side project I built after learning about circuit bending in cameras for intentional glitch effect. It is browser based camera toy where you "rewire" CCD pin pairs, turn knobs to get different glitch artefacts in real time to capture as photos. I had fun learning to simulate different pin modes - channel split, hue/phase shifts, horizontal clock delays, colour kill etc.<p>Here are some photos taken: <a href="https://glitchycam.com/gallery" rel="nofollow">https://glitchycam.com/gallery</a><p>I intentionally leaned towards skeuomorphic design for nostalgia. I miss the days where I'd spend hours making a button to look like a physical button. Here I chose to make it look like a "good enough" Teenage Engineering device UI.<p>I tested/used GPT-5.3-Codex to build this from scratch, since there was a lot of hype around it on X. Maybe I wasn’t using it right, but I found it needed a lot of code cleanup at every step and a lot of hand holding along the way. It missed details/nuances and didn't land the skeuomorphic buttons or the interaction polish. It mostly helped with boilerplate where there wasn't much thinking/detailing. It did give a basic starting point for the effect calculations, but didn't really move the needle on the details.<p>Please give it a go and let me know what you think - your photos and video never leave your browser (you can download them if you choose to). Everything is processed locally in your browser (works offline), nothing is uploaded or seen by anyone.
Show HN: I taught LLMs to play Magic: The Gathering against each other
I've been teaching LLMs to play Magic: The Gathering recently, via MCP tools hooked up to the open-source XMage codebase. It's still pretty buggy and I think there's significant room for existing models to get better at it via tooling improvements, but it pretty much works today. The ratings for expensive frontier models are artificially low right now because I've been focusing on cheaper models until I work out the bugs, so they don't have a lot of games in the system.