The best Hacker News stories from Show from the past day
Latest posts:
Show HN: InstantVideos.org – short documentaries in ~30 seconds
Hiya! So I've been playing around with having Claude make videos for a bit now even had some success posting the results to TikTok (and setup a whole pipeline so Claude can generate and post autonomously). With the release of Nano Banana 2 Lite, I was curious show fast I could make the generation, so last night I gave it a whirl and got down to around 30s for short-form video.<p>It uses GLM-5.2 fast via Fireworks to generate the scripts and image prompts and, like I said, Nano Banana 2 Lite for the images, gpt-4o-mini-tts for the narration, and ffmpeg to string it all together and add the Ken Burns zoom effect (which still has a shake I haven't been able to get rid of). The video compilation proved to be the blocker once the rest was in place, but I was able to speed that up by putting it on a 64 vCPU EC2.<p>The cost might be the most interesting aspect as the short form videos tend to be about 25 cents. Almost 90% of that is the images, which are 3.336 cents a piece. Of course, running the big 64 core EC2 to allow for the creation isn't cheap.<p>It seems like on-demand AI video is coming, and I thought this was an interesting demo of how close it might be in at least one narrow video domain.
Show HN: Shellular – run Claude Code, Codex, Pi from your phone
Show HN: Docx-CLI: agents read/edit Word docs using 1/2 the time and tokens
Show HN: PostgreSQL performance and cost across 23 EC2 instance types
Hey! I'm Andrei.<p>I got frustrated by how people tend to build overcomplicated backend systems, being "motivated" by big tech case studies and popular books.<p>So, I started exploring lean architecture, and building my digital garden of ideas, approaches and data that align with this direction.<p>Here I want to present one of the tools – Sizing tool for PostgreSQL. I've benchmarked PostgreSQL on different EC2 instances and disks, with different initial data sets to see performance that these instances can give you. And I've built a tool to visualize this data, which I welcome you to explore.<p>So, you can put your usual input parameters, like needed RPS and disk size as input, and find out which instance will be the most cost-efficient for your needs.<p>You can read about the methodology here: <a href="https://postgres.saneengineer.com/about" rel="nofollow">https://postgres.saneengineer.com/about</a><p>I've tested one workload – mixed 90/10 read/write, and only selected configurations. But it is extensible, and I (and you – benchmark is open source: <a href="https://github.com/anivaniuk/sanebench" rel="nofollow">https://github.com/anivaniuk/sanebench</a>) can run more configurations to have more data represented.<p>Does it look interesting? What workload should I benchmark next?
Show HN: Rowboat – Open-source, local-first alternative to Claude Desktop
Claude’s desktop app is brilliant, but for our own daily work we kept wanting it to be less like a chat app and more like a full-fledged work app. Rowboat is our attempt at that, including the ability to build your own work surfaces inside Rowboat (more below).<p>Our repo is <a href="https://github.com/rowboatlabs/rowboat" rel="nofollow">https://github.com/rowboatlabs/rowboat</a>, and there’s a demo video here: <a href="https://www.youtube.com/watch?v=et5yQABJ3xI" rel="nofollow">https://www.youtube.com/watch?v=et5yQABJ3xI</a><p>In a previous startup, we built a deep-learning product for enterprise support reps, including teams supporting P&G brands. Models took live notes, suggested replies, and recommended actions while support reps were on calls or handling emails. One lesson stuck with us: it's not enough for the AI to be right, the help has to show up where the work is happening.<p>So we added what we came to call “work surfaces”: dedicated areas for email, meetings, notes, browser, and parallel coding, where the assistant can help inside the workflow itself rather than only through chat:<p>- Email client: Rowboat has a simple email client that sorts incoming emails into important vs. everything else, and pre-creates drafts for important emails. As you edit and send emails, it takes notes on your style, so future drafts get closer to your voice.<p>- Meeting notes: We built a Granola-style local meeting notetaker. Notes are stored as plain Markdown files on your machine. After a meeting, Rowboat feeds the notes back into the knowledge graph and updates the relevant people, project, and topic notes.<p>- Browser: We added a built-in browser, isolated from your main one, where you can log in only to the accounts you want the assistant to help with. The assistant uses browser-use skills to navigate websites.<p>- Parallel coding: The code-mode inside Rowboat lets you spin multiple instances of Claude Code or Codex and either work with them directly or let Rowboat use your work context to orchestrate them. We built an ACP (Agent Client Protocol) client in Rowboat for this.<p>- Notes: Rowboat has an Obsidian-style local note-taking system. It comes with graph view, bases view, and voice notes. You can also sync Google Docs files and edit them inside Rowboat.<p>You can also build your own work surfaces inside Rowboat (web apps). Each app gets its own UI and a background agent, and can use all of Rowboat's tools, product integrations, and your work memory. For instance: an app to manage GitHub activity, project tracking, or ads campaign management. There are a few community apps at launch you can search and install, and you can publish your own by creating a GitHub repo for it and registering it.<p>Rowboat also indexes your work into a knowledge graph that all of the above surfaces use to have better context. We did a Show HN a few months back on this: <a href="https://news.ycombinator.com/item?id=46962641">https://news.ycombinator.com/item?id=46962641</a>.<p>As an example that ties some of these together: you can create an app inside Rowboat that collects feature requests from your email, meetings, and Slack and ranks them, then uses Claude Code to draft a first version of the top-ranked feature, pulling prior context about it from your knowledge graph.<p>Rowboat is local-first: data is stored as plain Markdown files you can read, edit, or delete anytime. It is Apache-2.0 and works with any LLM, including local models through Ollama or LM Studio.<p>We’d love to hear your thoughts, and contributions are welcome!
Show HN: Fast, native Mac file manager (filters, fuzzy find, 9 MB, no Electron)
My Downloads folder had been left unkept for a really long time and cleaning it up using Finder was quite cumbersome. So I started creating a simple app to help me filter out and delete or move the files in the folder.<p>It started out very basic and the filtering options genuinely helped me clean out the Downloads folder, then as I thought of more features I would like to see in a file manager I started to add them. Some of the features are:<p>- Fuzzy go to folder/file where you only need to write a few letters of a full path, get suggestions and can jump to the correct path instantly
- Hover over a file to preview an image or PDF without opening it
- Dual-pane view and tabs that remember selected filters
- Command palette to find actions fast
- Batch rename (with regex support and presets for common operations), image conversion (HEIC/WebP/AVIF to JPG/PNG), zip creation
- Bookmarks, Quick Look, single-click open, keyboard control<p>And many other small quality of life features.<p>I used Claude Code for making the app and the tech stack is .NET/C# with AppKit. The app is compiled to Native AOT so the total app size is only around 9 MB. Since file operations are very important to get right (I don’t want to lose any important files) I put a lot of time into hardening file move/copy/delete operations. Copies are written to a temp file and atomically renamed into place. I also made a dedicated audit of move/copy/delete and verified each operation by hand.<p>Another thing that’s important to me is apps that are privacy first so the only network request the app makes is to check if there’s a new version (this is not done at all for the trial version, the trial expiry date is enforced locally by just checking the date and trusting the user) and the only information that is sent is the current app version.<p>The app is Apple Silicon, macOS 12+ and has a 30-day free trial with a one-time launch price of $19.99 (no subscription).
Show HN: Davit, a Apple Containers UI
Mostly vibe-coded Apple Containers front-end that I'd like to use myself. But if others want to use it, here's the source code.
Show HN: Pet Reminder – A macOS reminder app with a desktop pet
Show HN: I Built LangGraph for Swift
Show HN: I hated how much my 12-year-old played Roblox, so we built our own FPS
I'm a father of two, 7 and 12. They are obsessed with Roblox, especially Rivals.<p>Like a lot of parents, we did not love it. We tried the usual things: block it, limit it, set timers." It became a daily battle, a lose-lose situation.<p>So I flipped the problem.<p>Instead of fighting what they loved, I decided to lean into it, but with a twist.<p>Why just play an FPS when you could build one together?<p>My kids became the PMs. Claude and I became their engineer.<p>I was shocked by how fast we moved. We picked a name, Cooked and started building.<p>Get in. Lock in. Get cooked!<p>In the first 3 hours, we had an actual FPS we could play together in the browser.<p>Next day I invited my friend's two kids over. Suddenly, I had four PMs.<p>We had 3 laptops, 1 iPad and 1 iPhone.<p>So in 30mins we added mobile support and could play all 5 together.<p>The kids would ask for features:<p>"Can we have a rocket launcher that knocks people off the map?"<p>"The knife should stab faster when you hold it."<p>I know almost nothing about FPS design, so they were the experts. They explained what they wanted. We turned that into prompts. Claude would implement it.<p>We would reload the page and play it 10 mins later.<p>It's the most fun I've had building software in years. My kids are proud of it.<p># Here's how Cooked is cooked.<p>The architecture<p>- It's just a web page. TypeScript + Three.js.
- No game server. Multiplayer runs over a P2P WebRTC mesh.
- Supabase is only the matchmaker. It handles presence and the WebRTC handshake.
- It is very cheap to run. Static site plus a few Cloudflare edge functions for TURN relay.
- Bots fill empty rooms. Each bot gets a random loadout and play style.<p># What worked and what didn't<p>I have been writing software for 20 years. For the last 9 years, as CEO of Krisp.ai, I have not had much time to program myself. I missed it.<p>Claude changed it. I obsessed with this side project for the last 2-3 weeks.<p>First, building a project with your kids is a great way to bond. It gives you shared interests and real quality time.<p>Second, I wanted to understand the limits of Claude today and how we can apply this at Krisp. This helps me stay grounded.<p>Opus 4.8 is extremely good at architecting application systems, researching references, and implementing algorithms.<p>I would tell it things such as "research how the weapon system is designed in Roblox, Diablo, Fortnite and come up with a proposal on how to do this in Cooked". It would come up with an impressive backlog and I would just say "Go".<p>Where it was really weak was UI design. It simply couldn't detect/see obvious design problems.<p>I’ve tried to implement a loop with a game designer agent, UI designer and system architect. While the research, reasoning were top-notch, the system failed due to bad design taste and the inability to see images properly and spot problems there.<p>Interesting fact. It really failed miserably when I challenged it to design and draw "hands" that hold the weapons. I also have struggled with building decent maps. It lacks imagination and fails even after providing a lot of guidance.<p>Another interesting fact. This morning, I gave the same problem of “drawing a hand” to Fable and it drew it from first-shot, for all weapons. Very impressive.<p># Why I'm sharing this<p>Two reasons.<p>One: if you're a parent fighting the same screen-time battle, consider flipping it. Building the thing they love, with them, turned a source of conflict into a shared creative project. My 12-year-old now understands feature scoping. My 7-year-old has strong opinions about explosion sizes.<p>Two: AI coding tools have crossed a line. A dad who is not a game developer, together with four kids, built a real multiplayer browser FPS that their friends actually play.
Show HN: Paint the Earth on a live, interactive globe (collaborative art.)
Earth.tattoo divides the earth into 510 million 16x16 pixel "tiles" that you can own and paint as you like. You can claim one free tile per hour.
Show HN: Scan your AI agents for dangerous capabilities
Show HN: Pulpie – Models for Cleaning the Web
Hey HN, I'm Shreyash, founder of Feyn. We built Pulpie, a family of Pareto optimal models for cleaning the web. Pulpie strips boilerplate (ads, footers, sidebars) from raw HTML and returns just the main content as HTML or Markdown.<p>We match SOTA extraction quality while being 20x cheaper. Cleaning 1 billion webpages costs $7,900 with Pulpie versus $159,000 with Dripper, the current leading extractor.<p>The gains come from architecture. Today's leading extractors are decoders that generate output one token at a time. Each step reads the full model from memory to produce a single token. Conversely, Pulpie models are encoders. They run one forward pass over the full input HTML and label each block as boilerplate or content. As a result, Pulpie is compute-bound while decoders are memory-bound. Cheaper GPUs have relatively more compute than memory bandwidth. This makes Pulpie easy to run optimally.<p>Here's Pulpie and Dripper cleaning the same pages side by side: <a href="https://www.youtube.com/watch?v=ibd-tIiQECo" rel="nofollow">https://www.youtube.com/watch?v=ibd-tIiQECo</a>. You can try a side-by-side comparison yourself: <a href="https://huggingface.co/spaces/feyninc/pulpie" rel="nofollow">https://huggingface.co/spaces/feyninc/pulpie</a><p>Our motivation for Pulpie came from building a deep research harness. Every search API returns noisy content that contains ads, nav elements, and sidebars. In one instance, an ad for "Gemini on Pixel" slipped into our search results, got passed into LLM context, and ended up in the final answer served to the user. Pretty embarrassing moment for us but it helped us realize how bad data kills model intelligence. We built Pulpie to get clean data for cheap.<p>All models are open source on Hugging Face. You can read about our training process and how to use Pulpie here: <a href="https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cleaning-the-web/#get-started">https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cl...</a><p>Happy to answer any questions!
Show HN: Pulpie – Models for Cleaning the Web
Hey HN, I'm Shreyash, founder of Feyn. We built Pulpie, a family of Pareto optimal models for cleaning the web. Pulpie strips boilerplate (ads, footers, sidebars) from raw HTML and returns just the main content as HTML or Markdown.<p>We match SOTA extraction quality while being 20x cheaper. Cleaning 1 billion webpages costs $7,900 with Pulpie versus $159,000 with Dripper, the current leading extractor.<p>The gains come from architecture. Today's leading extractors are decoders that generate output one token at a time. Each step reads the full model from memory to produce a single token. Conversely, Pulpie models are encoders. They run one forward pass over the full input HTML and label each block as boilerplate or content. As a result, Pulpie is compute-bound while decoders are memory-bound. Cheaper GPUs have relatively more compute than memory bandwidth. This makes Pulpie easy to run optimally.<p>Here's Pulpie and Dripper cleaning the same pages side by side: <a href="https://www.youtube.com/watch?v=ibd-tIiQECo" rel="nofollow">https://www.youtube.com/watch?v=ibd-tIiQECo</a>. You can try a side-by-side comparison yourself: <a href="https://huggingface.co/spaces/feyninc/pulpie" rel="nofollow">https://huggingface.co/spaces/feyninc/pulpie</a><p>Our motivation for Pulpie came from building a deep research harness. Every search API returns noisy content that contains ads, nav elements, and sidebars. In one instance, an ad for "Gemini on Pixel" slipped into our search results, got passed into LLM context, and ended up in the final answer served to the user. Pretty embarrassing moment for us but it helped us realize how bad data kills model intelligence. We built Pulpie to get clean data for cheap.<p>All models are open source on Hugging Face. You can read about our training process and how to use Pulpie here: <a href="https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cleaning-the-web/#get-started">https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cl...</a><p>Happy to answer any questions!
Show HN: Mise – A keyboard-driven Python/Qt6 browser built for fanless laptops
Show HN: I built an encrypted BLE dongle for pasting stuff to air-gapped devices
Definitely one of those "20 minute adventure gone wrong" projects where all I wanted initially was a quick wireless rubber ducky for bitlocker keys and the like and then I kept adding stuff like AES-256.....<p>Currently working on adding WebAuthn/FIDO support because the hardware is already there and scope creep is a lifestyle at this point.<p>Would love feedback, especially on the security side. Repo and PCB files are fully open source.
Show HN: I trained a language model that thinks the capital of Japan is Paris
Show HN: Osint tool that finds exposed files on domains
hey guys, wanted to show one of my side projects i just made public.<p>the idea is basically another osint tool for pentesters and bug bounty
hunters. it watches certificate transparency logs and checks newly-seen
domains for exposed stuff like .env files, open .git dirs, config files,
db dumps and so on, and puts whatever it finds into a searchable db. you
just search a domain (or part of one) and see what's exposed.<p>it's read-only and free. one thing i've been thinking about adding is a
way to register for certain keywords and get notified when something new
shows up for that search.<p>would love to hear if you have other ideas for useful features, and also
ideas for how to reduce abuse of the data, since that's the part i'm least
sure about.<p><a href="https://search.cerast-intelligence.com/" rel="nofollow">https://search.cerast-intelligence.com/</a>
Show HN: Osint tool that finds exposed files on domains
hey guys, wanted to show one of my side projects i just made public.<p>the idea is basically another osint tool for pentesters and bug bounty
hunters. it watches certificate transparency logs and checks newly-seen
domains for exposed stuff like .env files, open .git dirs, config files,
db dumps and so on, and puts whatever it finds into a searchable db. you
just search a domain (or part of one) and see what's exposed.<p>it's read-only and free. one thing i've been thinking about adding is a
way to register for certain keywords and get notified when something new
shows up for that search.<p>would love to hear if you have other ideas for useful features, and also
ideas for how to reduce abuse of the data, since that's the part i'm least
sure about.<p><a href="https://search.cerast-intelligence.com/" rel="nofollow">https://search.cerast-intelligence.com/</a>
Show HN: Osint tool that finds exposed files on domains
hey guys, wanted to show one of my side projects i just made public.<p>the idea is basically another osint tool for pentesters and bug bounty
hunters. it watches certificate transparency logs and checks newly-seen
domains for exposed stuff like .env files, open .git dirs, config files,
db dumps and so on, and puts whatever it finds into a searchable db. you
just search a domain (or part of one) and see what's exposed.<p>it's read-only and free. one thing i've been thinking about adding is a
way to register for certain keywords and get notified when something new
shows up for that search.<p>would love to hear if you have other ideas for useful features, and also
ideas for how to reduce abuse of the data, since that's the part i'm least
sure about.<p><a href="https://search.cerast-intelligence.com/" rel="nofollow">https://search.cerast-intelligence.com/</a>