The best Hacker News stories from Show from the past day

Go back

Latest posts:

Show HN: Web Audio Studio – A Visual Debugger for Web Audio API Graphs

Hi HN,<p>I’ve been working on a browser-based tool for exploring and debugging Web Audio API graphs.<p>Web Audio Studio lets you write real Web Audio API code, run it, and see the runtime graph it produces as an interactive visual representation. Instead of mentally tracking connect() calls, you can inspect the actual structure of the graph, follow signal flow, and tweak parameters while the audio is playing.<p>It includes built-in visualizations for common node types — waveforms, filter responses, analyser time and frequency views, compressor transfer curves, waveshaper distortion, spatial positioning, delay timing, and more — so you can better understand what each part of the graph is doing. You can also insert an AnalyserNode between any two nodes to inspect the signal at that exact point in the chain.<p>There are around 20 templates (basic oscillator setups, FM/AM synthesis, convolution reverb, IIR filters, spatial audio, etc.), so you can start from working examples and modify them instead of building everything from scratch.<p>Everything runs fully locally in the browser — no signup, no backend.<p>The motivation came from working with non-trivial Web Audio graphs and finding it increasingly difficult to reason about structure and signal flow once things grow beyond simple examples. Most tutorials show small snippets, but real projects quickly become harder to inspect. I wanted something that stays close to the native Web Audio API while making the runtime graph visible and inspectable.<p>This is an early alpha and desktop-only for now.<p>I’d really appreciate feedback — especially from people who have used Web Audio API in production or built audio tools. You can leave comments here, or use the feedback button inside the app.<p><a href="https://webaudio.studio" rel="nofollow">https://webaudio.studio</a>

Show HN: Pianoterm – Run shell commands from your Piano. A Linux CLI tool

A little weekend project, made so I can pause/play/rewind directly on the piano, when learning a song by ear.

Show HN: Vibe Code your 3D Models

Hi HN,<p>I’m the creator of SynapsCAD, an open-source desktop application I've been building that combines an OpenSCAD code editor, a real-time 3D viewport, and an AI assistant.<p>You can write OpenSCAD code, compile it directly to a 3D mesh, and use an LLM (OpenAI, Claude, Gemini, ...) to modify the code through natural language.<p>Demo video: <a href="https://www.youtube.com/watch?v=cN8a5UozS5Q" rel="nofollow">https://www.youtube.com/watch?v=cN8a5UozS5Q</a><p>A bit about the architecture:<p>- It’s built entirely in Rust.<p>- The UI and 3D viewport are powered by Bevy 0.15 and egui.<p>- It uses a pure-Rust compilation pipeline (openscad-rs for parsing and csgrs for constructive solid geometry rendering) so there are no external tools or WASM required.<p>- Async AI network calls are handled by Tokio in the background to keep the Bevy render loop smooth.<p>Disclaimer: This is a very early prototype. The OpenSCAD parser/compiler doesn't support everything perfectly yet, so you will definitely hit some rough edges if you throw complex scripts at it.<p>I mostly just want to get this into the hands of people who tinker with CAD or Rust.<p>I'd be super happy for any feedback, architectural critiques, or bug reports—especially if you can drop specific OpenSCAD snippets that break the compiler in the GitHub issues!<p>GitHub (Downloads for Win/Mac/Linux): <a href="https://github.com/ierror/synaps-cad" rel="nofollow">https://github.com/ierror/synaps-cad</a><p>Happy to answer any questions about the tech stack or the roadmap!

Show HN: I built a zero-browser, pure-JS typesetting engine for bit-perfect PDFs

Hi HN, I'm a film director by trade, and I prefer writing my stories in plain text rather than using clunky screenplay software. Standard markup like Fountain doesn't work for me because I write in mixed languages, so I use Markdown with a custom syntax I invented to resemble standard screenplay structures.<p>This workflow is great until I need to actually generate an industry-standard screenplay PDF. I got tired of manually copying and pasting my text back into the clunky software just to export it, so I decided to write a script to automate the process. That's when I hit a wall.<p>I tried using React-pdf and other high-level libraries, but they failed me on two fronts: true multilingual text shaping, and complex contextual pagination. Specifically, the strict screenplay requirement to automatically inject (MORE) at the bottom of a page and (CONT'D) at the top of the next page when a character's dialogue is split across a page break.<p>You can't really do that elegantly when the layout engine is a black box. So, I bypassed them and built my own typesetting engine from scratch.<p>VMPrint is a deterministic, zero-browser layout VM written in pure TypeScript. It abandons the DOM entirely. It loads OpenType fonts, runs grapheme-accurate text segmentation (Intl.Segmenter), calculates interval-arithmetic spatial boundaries for text wrapping, and outputs a flat array of absolute coordinates.<p>Some stats:<p>Zero dependencies on Node.js APIs or the DOM (runs in Cloudflare Workers, Lambda, browser).<p>88 KiB core packed.<p>Performance: On a Snapdragon Elite ARM chip, the engine's "God Fixture" (8 pages of mixed CJK, Arabic RTL, drop caps, and multi-page spanning tables) completes layout and rendering in ~28ms.<p>The repo also includes draft2final, the CLI tool I built to convert Markdown into publication-grade PDFs (including the screenplay flavor) using this engine.<p>This is my first open-source launch. The manuscript is still waiting, but the engine shipped instead. I’d love to hear your thoughts, answer any questions about the math or the architecture, and see if anyone else finds this useful!<p>--- A note on AI usage: To be fully transparent about how this was built, I engineered the core concept (an all-flat, morphable box-based system inspired by game engines, applied to page layouts), the interval-arithmetic math, the grapheme segmentation, and the layout logic entirely by hand. I did use AI as a coding assistant at the functional level, but the overall software architecture, component structures, and APIs were meticulously designed by me.<p>For a little background: I’ve been a professional systems engineer since 1992. I’ve worked as a senior system architect for several Fortune 500 companies and currently serve as Chief Scientist at a major telecom infrastructure provider. I also created one of the world's first real-time video encoding technologies for low-power mobile phones (in the pre-smartphone era). I'm no stranger to deep tech, and a deterministic layout VM is exactly the kind of strict, math-heavy system that simply cannot be effectively constructed with a few lines of AI prompts.

Show HN: uBlock filter list to blur all Instagram Reels

A filter list for uBO that blurs all video and non-follower content from Instagram. Works on mobile with uBO Lite.<p>related: <a href="https://news.ycombinator.com/item?id=47016443">https://news.ycombinator.com/item?id=47016443</a>

Show HN: Omni – Open-source workplace search and chat, built on Postgres

Hey HN!<p>Over the past few months, I've been working on building Omni - a workplace search and chat platform that connects to apps like Google Drive/Gmail, Slack, Confluence, etc. Essentially an open-source alternative to Glean, fully self-hosted.<p>I noticed that some orgs find Glean to be expensive and not very extensible. I wanted to build something that small to mid-size teams could run themselves, so I decided to build it all on Postgres (ParadeDB to be precise) and pgvector. No Elasticsearch, or dedicated vector databases. I figured Postgres is more than capable of handling the level of scale required.<p>To bring up Omni on your own infra, all it takes is a single `docker compose up`, and some basic configuration to connect your apps and LLMs.<p>What it does:<p>- Syncs data from all connected apps and builds a BM25 index (ParadeDB) and HNSW vector index (pgvector)<p>- Hybrid search combines results from both<p>- Chat UI where the LLM has tools to search the index - not just basic RAG<p>- Traditional search UI<p>- Users bring their own LLM provider (OpenAI/Anthropic/Gemini)<p>- Connectors for Google Workspace, Slack, Confluence, Jira, HubSpot, and more<p>- Connector SDK to build your own custom connectors<p>Omni is in beta right now, and I'd love your feedback, especially on the following:<p>- Has anyone tried self-hosting workplace search and/or AI tools, and what was your experience like?<p>- Any concerns with the Postgres-only approach at larger scales?<p>Happy to answer any questions!<p>The code: <a href="https://github.com/getomnico/omni" rel="nofollow">https://github.com/getomnico/omni</a> (Apache 2.0 licensed)

Show HN: Timber – Ollama for classical ML models, 336x faster than Python

Show HN: Govbase – Follow a bill from source text to news bias to social posts

Govbase tracks every bill, executive order, and federal regulation from official sources (Congress.gov, Federal Register, White House). An AI pipeline breaks each one down into plain-language summaries and shows who it impacts by demographic group.<p>It also ties each policy directly to bias-rated news coverage and politician social posts on X, Bluesky, and Truth Social. You can follow a single bill from the official text to how media frames it to what your representatives are saying about it.<p>Free on web, iOS, and Android.<p><a href="https://govbase.com" rel="nofollow">https://govbase.com</a><p>I'd love feedback from the community, especially on the data pipeline or what policy areas/features you feel are missing.

Show HN: I built a sub-500ms latency voice agent from scratch

I built a voice agent from scratch that averages ~400ms end-to-end latency (phone stop → first syllable). That’s with full STT → LLM → TTS in the loop, clean barge-ins, and no precomputed responses.<p>What moved the needle:<p>Voice is a turn-taking problem, not a transcription problem. VAD alone fails; you need semantic end-of-turn detection.<p>The system reduces to one loop: speaking vs listening. The two transitions - cancel instantly on barge-in, respond instantly on end-of-turn - define the experience.<p>STT → LLM → TTS must stream. Sequential pipelines are dead on arrival for natural conversation.<p>TTFT dominates everything. In voice, the first token is the critical path. Groq’s ~80ms TTFT was the single biggest win.<p>Geography matters more than prompts. Colocate everything or you lose before you start.<p>GitHub Repo: <a href="https://github.com/NickTikhonov/shuo" rel="nofollow">https://github.com/NickTikhonov/shuo</a><p>Follow whatever I next tinker with: <a href="https://x.com/nick_tikhonov" rel="nofollow">https://x.com/nick_tikhonov</a>

Show HN: Vertex.js – A 1kloc SPA Framework

Vertex is a 1kloc SPA framework containing everything you need from React, Ractive-Load and jQuery while still being jQuery-compatible.<p>vertex.js is a single, self-contained file with no build step and no dependencies.<p>Also exhibits the curious quality of being faster than over a decade of engineering at Facebook in some cases: <a href="https://files.catbox.moe/sqei0d.png" rel="nofollow">https://files.catbox.moe/sqei0d.png</a>

Show HN: SQLite for Rivet Actors – one database per agent, tenant, or document

Hey HN! We posted Rivet Actors here previously [1] as an open-source alternative to Cloudflare Durable Objects.<p>Today we've released SQLite storage for actors (Apache 2.0).<p>Every actor gets its own SQLite database. This means you can have millions of independent databases: one for each agent, tenant, user, or document.<p>Useful for:<p>- AI agents: per-agent DB for message history, state, embeddings<p>- Multi-tenant SaaS: real per-tenant isolation, no RLS hacks<p>- Collaborative documents: each document gets its own database with built-in multiplayer<p>- Per-user databases: isolated, scales horizontally, runs at the edge<p>The idea of splitting data per entity isn't new: Cassandra and DynamoDB use partition keys to scale horizontally, but you're stuck with rigid schemas ("single-table design" [3]), limited queries, and painful migrations. SQLite per entity gives you the same scalability without those tradeoffs [2].<p>How this compares:<p>- Cloudflare Durable Objects & Agents: most similar to Rivet Actors with colocated SQLite and compute, but closed-source and vendor-locked<p>- Turso Cloud: Great platform, but closed-source + diff use case. Clients query over the network, so reads are slow or stale. Rivet's single-writer actor model keeps reads local and fresh.<p>- D1, Turso (the DB), Litestream, rqlite, LiteFS: great tools for running a single SQLite database with replication. Rivet is for running lots of isolated databases.<p>Under the hood, SQLite runs in-process with each actor. A custom VFS persists writes to HA storage (FoundationDB or Postgres).<p>Rivet Actors also provide realtime (WebSockets), React integration (useActor), horizontal scalability, and actors that sleep when idle.<p>GitHub: <a href="https://github.com/rivet-dev/rivet" rel="nofollow">https://github.com/rivet-dev/rivet</a><p>Docs: <a href="https://www.rivet.dev/docs/actors/sqlite/">https://www.rivet.dev/docs/actors/sqlite/</a><p>[1] <a href="https://news.ycombinator.com/item?id=42472519">https://news.ycombinator.com/item?id=42472519</a><p>[2] <a href="https://rivet.dev/blog/2025-02-16-sqlite-on-the-server-is-misunderstood/">https://rivet.dev/blog/2025-02-16-sqlite-on-the-server-is-mi...</a><p>[3] <a href="https://www.alexdebrie.com/posts/dynamodb-single-table/" rel="nofollow">https://www.alexdebrie.com/posts/dynamodb-single-table/</a>

Show HN: Audio Toolkit for Agents

Show HN: Xmloxide – an agent-made Rust replacement for libxml2

Recently several AI labs have published experiments where they tried to get AI coding agents to complete large software projects.<p>- Cursor attempted to make a browser from scratch: <a href="https://cursor.com/blog/scaling-agents" rel="nofollow">https://cursor.com/blog/scaling-agents</a><p>- Anthropic attempted to make a C Compiler: <a href="https://www.anthropic.com/engineering/building-c-compiler" rel="nofollow">https://www.anthropic.com/engineering/building-c-compiler</a><p>I have been wondering if there are software packages that can be easily reproduced by taking the available test suites and tasking agents to work on projects until the existing test suites pass.<p>After playing with this concept by having Claude Code reproduce redis and sqlite, I began looking for software packages where an agent-made reproduction might actually be useful.<p>I found libxml2, a widely used, open-source C language library designed for parsing, creating, and manipulating XML and HTML documents. Three months ago it became unmaintained with the update, "This project is unmaintained and has [known security issues](<a href="https://gitlab.gnome.org/GNOME/libxml2/-/issues/346" rel="nofollow">https://gitlab.gnome.org/GNOME/libxml2/-/issues/346</a>). It is foolish to use this software to process untrusted data.".<p>With a few days of work, I was able to create xmloxide, a memory safe rust replacement for libxml2 which passes the compatibility suite as well as the W3C XML Conformance Test Suite. Performance is similar on most parsing operations and better on serialization. It comes with a C API so that it can be a replacement for existing uses of libxml2.<p>- crates.io: <a href="https://crates.io/crates/xmloxide" rel="nofollow">https://crates.io/crates/xmloxide</a><p>- GitHub release: <a href="https://github.com/jonwiggins/xmloxide/releases/tag/v0.1.0" rel="nofollow">https://github.com/jonwiggins/xmloxide/releases/tag/v0.1.0</a><p>While I don't expect people to cut over to this new and unproven package, I do think there is something interesting to think about here in how coding agents like Claude Code can quickly iterate given a test suite. It's possible the legacy code problem that COBOL and other systems present will go away as rewrites become easier. The problem of ongoing maintenance to fix CVEs and update to later package versions becomes a larger percentage of software package management work.

Show HN: SplatHash – A lightweight alternative to BlurHash and ThumbHash

Hi HN,<p>I built SplatHash. It's a lightweight image placeholder generator I wrote to be a simpler, faster alternative to BlurHash and ThumbHash.<p>Repo: <a href="https://github.com/junevm/splathash" rel="nofollow">https://github.com/junevm/splathash</a>

Show HN: SplatHash – A lightweight alternative to BlurHash and ThumbHash

Hi HN,<p>I built SplatHash. It's a lightweight image placeholder generator I wrote to be a simpler, faster alternative to BlurHash and ThumbHash.<p>Repo: <a href="https://github.com/junevm/splathash" rel="nofollow">https://github.com/junevm/splathash</a>

Show HN: Decided to play god this morning, so I built an agent civilisation

at a pub in london, 2 weeks ago - I asked myself, if you spawned agents into a world with blank neural networks and zero knowledge of human existence — no language, no economy, no social templates — what would they evolve on their own?<p>would they develop language? would they reproduce? would they evolve as energy dependent systems? what would they even talk about?<p>so i decided to make myself a god, and built WERLD - an open-ended artificial life sim, where the agent's evolve their own neural architecture.<p>Werld drops 30 agents onto a graph with NEAT neural networks that evolve their own topology, 64 sensory channels, continuous motor effectors, and 29 heritable genome traits. communication bandwidth, memory decay, aggression vs cooperation — all evolvable. No hardcoded behaviours, no reward functions. - they could evolve in any direction.<p>Pure Python, stdlib only — brains evolve through survival and reproduction, not backprop. There's a Next.js dashboard ("Werld Observatory") that gives you a live-view: population dynamics, brain complexity, species trajectories, a narrative story generator, live world map.<p>thought this would be more fun as an open-source project!<p>can't wait to see where this could evolve - i'll be in the comments and on the repo.<p><a href="https://github.com/nocodemf/werld" rel="nofollow">https://github.com/nocodemf/werld</a>

Show HN: Decided to play god this morning, so I built an agent civilisation

at a pub in london, 2 weeks ago - I asked myself, if you spawned agents into a world with blank neural networks and zero knowledge of human existence — no language, no economy, no social templates — what would they evolve on their own?<p>would they develop language? would they reproduce? would they evolve as energy dependent systems? what would they even talk about?<p>so i decided to make myself a god, and built WERLD - an open-ended artificial life sim, where the agent's evolve their own neural architecture.<p>Werld drops 30 agents onto a graph with NEAT neural networks that evolve their own topology, 64 sensory channels, continuous motor effectors, and 29 heritable genome traits. communication bandwidth, memory decay, aggression vs cooperation — all evolvable. No hardcoded behaviours, no reward functions. - they could evolve in any direction.<p>Pure Python, stdlib only — brains evolve through survival and reproduction, not backprop. There's a Next.js dashboard ("Werld Observatory") that gives you a live-view: population dynamics, brain complexity, species trajectories, a narrative story generator, live world map.<p>thought this would be more fun as an open-source project!<p>can't wait to see where this could evolve - i'll be in the comments and on the repo.<p><a href="https://github.com/nocodemf/werld" rel="nofollow">https://github.com/nocodemf/werld</a>

Show HN: I ported Manim to TypeScript (run 3b1B math animations in the browser)

Hi HN, I'm Narek. I built Manim-Web, a TypeScript/JavaScript port of 3Blue1Brown’s popular Manim math animation engine.<p>The Problem: Like many here, I love Manim's visual style. But setting it up locally is notoriously painful - it requires Python, FFmpeg, Cairo, and a full LaTeX distribution. It creates a massive barrier to entry, especially for students or people who just want to quickly visualize a concept.<p>The Solution: I wanted to make it zero-setup, so I ported the engine to TypeScript. Manim-Web runs entirely client-side in the browser. No Python, no servers, no install. It runs animations in real-time at 60fps.<p>How it works underneath: - Rendering: Uses Canvas API / WebGL (via Three.js for 3D scenes). - LaTeX: Rendered and animated via MathJax/KaTeX (no LaTeX install needed!). - API: I kept the API almost identical to the Python version (e.g., scene.play(new Transform(square, circle))), meaning existing Manim knowledge transfers over directly. - Reactivity: Updaters and ValueTrackers follow the exact same reactive pattern as the Python original.<p>Because it's web-native, the animations are now inherently interactive (objects can be draggable/clickable) and can be embedded directly into React/Vue apps, interactive textbooks, or blogs. I also included a py2ts converter to help migrate existing scripts.<p>Live Demo: <a href="https://maloyan.github.io/manim-web/examples" rel="nofollow">https://maloyan.github.io/manim-web/examples</a> GitHub: <a href="https://github.com/maloyan/manim-web" rel="nofollow">https://github.com/maloyan/manim-web</a><p>It's open-source (MIT). I'm still actively building out feature parity with the Python version, but core animations, geometry, plotting, and 3D orbiting are working great. I would love to hear your feedback, and I'll be hanging around to answer any technical questions about rendering math in the browser!

Show HN: Now I Get It – Translate scientific papers into interactive webpages

Understanding scientific articles can be tough, even in your own field. Trying to comprehend articles from others? Good luck.<p>Enter, Now I Get It!<p>I made this app for curious people. Simply upload an article and after a few minutes you'll have an interactive web page showcasing the highlights. Generated pages are stored in the cloud and can be viewed from a gallery.<p>Now I Get It! uses the best LLMs out there, which means the app will improve as AI improves.<p>Free for now - it's capped at 20 articles per day so I don't burn cash.<p>A few things I (and maybe you will) find interesting:<p>* This is a pure convenience app. I could just as well use a saved prompt in Claude, but sometimes it's nice to have a niche-focused app. It's just cognitively easier, IMO.<p>* The app was built for myself and colleagues in various scientific fields. It can take an hour or more to read a detailed paper so this is like an on-ramp.<p>* The app is a place for me to experiment with using LLMs to translate scientific articles into software. The space is pregnant with possibilities.<p>* Everything in the app is the result of agentic engineering, e.g. plans, specs, tasks, execution loops. I swear by Beads (<a href="https://github.com/steveyegge/beads" rel="nofollow">https://github.com/steveyegge/beads</a>) by Yegge and also make heavy use of Beads Viewer (<a href="https://news.ycombinator.com/item?id=46314423">https://news.ycombinator.com/item?id=46314423</a>) and Destructive Command Guard (<a href="https://news.ycombinator.com/item?id=46835674">https://news.ycombinator.com/item?id=46835674</a>) by Jeffrey Emanuel.<p>* I'm an AWS fan and have been impressed by Opus' ability to write good CFN. It still needs a bunch of guidance around distributed architecture but way better than last year.

Show HN: Now I Get It – Translate scientific papers into interactive webpages

Understanding scientific articles can be tough, even in your own field. Trying to comprehend articles from others? Good luck.<p>Enter, Now I Get It!<p>I made this app for curious people. Simply upload an article and after a few minutes you'll have an interactive web page showcasing the highlights. Generated pages are stored in the cloud and can be viewed from a gallery.<p>Now I Get It! uses the best LLMs out there, which means the app will improve as AI improves.<p>Free for now - it's capped at 20 articles per day so I don't burn cash.<p>A few things I (and maybe you will) find interesting:<p>* This is a pure convenience app. I could just as well use a saved prompt in Claude, but sometimes it's nice to have a niche-focused app. It's just cognitively easier, IMO.<p>* The app was built for myself and colleagues in various scientific fields. It can take an hour or more to read a detailed paper so this is like an on-ramp.<p>* The app is a place for me to experiment with using LLMs to translate scientific articles into software. The space is pregnant with possibilities.<p>* Everything in the app is the result of agentic engineering, e.g. plans, specs, tasks, execution loops. I swear by Beads (<a href="https://github.com/steveyegge/beads" rel="nofollow">https://github.com/steveyegge/beads</a>) by Yegge and also make heavy use of Beads Viewer (<a href="https://news.ycombinator.com/item?id=46314423">https://news.ycombinator.com/item?id=46314423</a>) and Destructive Command Guard (<a href="https://news.ycombinator.com/item?id=46835674">https://news.ycombinator.com/item?id=46835674</a>) by Jeffrey Emanuel.<p>* I'm an AWS fan and have been impressed by Opus' ability to write good CFN. It still needs a bunch of guidance around distributed architecture but way better than last year.

1 2 3 ... 947 948 949 >