The best Hacker News stories from Show from the past day
Latest posts:
Show HN: I created a cross-platform GUI for the JJ VCS (Git compatible)
Personally, I think the JJ VCS (<a href="https://github.com/jj-vcs/jj" rel="nofollow">https://github.com/jj-vcs/jj</a>) hit a point some time in this past year where I find it hard to find a great reason to continue using git. Over the years I've cobbled together aliases and bash functions to try to improve my git workflow, but after using jj, which works with ~any git repo and integrates great with Github repos, all of the workflow issues I ran into with git are not only solved, but improved in ways I couldn't manage with simple scripts.<p>One example is the op log, which lets you go to any point in your repo's time and provides simple undo and redo commands when you want to back out of a merge, didn't mean to rebase, etc.<p>Because I have a pretty strong conviction that JJ is at this point a cleaner and more powerful version of git, my hopes are that it continues to grow. With that, it seemed a proper full-featured GUI was missing for the VCS. There's some plugins that add some integration into VS Code, and there's one in the works to get Intellij support working, but many of the constructs JJ provides in my opinion necessitate a grounds-up build of a GUI around how JJ works.<p>Right now, [name-redacted] is an MVP in an open beta. I did my best to support all of the core functionality one would need, though there's many nice-to-haves that I am going to add, like native merge support, native splitting, etc. Most of this will be based on feedback from the Beta.<p>I'm really grateful for the great community JJ has built, alongside the HN community itself in the countless VCS-based posts I've read over the years, and am hoping for lots of input here during Beta under real usage - the goal is to be a full-featured desktop GUI for the VCS, similar to many of the great products that are out there for git.
Show HN: I created a cross-platform GUI for the JJ VCS (Git compatible)
Personally, I think the JJ VCS (<a href="https://github.com/jj-vcs/jj" rel="nofollow">https://github.com/jj-vcs/jj</a>) hit a point some time in this past year where I find it hard to find a great reason to continue using git. Over the years I've cobbled together aliases and bash functions to try to improve my git workflow, but after using jj, which works with ~any git repo and integrates great with Github repos, all of the workflow issues I ran into with git are not only solved, but improved in ways I couldn't manage with simple scripts.<p>One example is the op log, which lets you go to any point in your repo's time and provides simple undo and redo commands when you want to back out of a merge, didn't mean to rebase, etc.<p>Because I have a pretty strong conviction that JJ is at this point a cleaner and more powerful version of git, my hopes are that it continues to grow. With that, it seemed a proper full-featured GUI was missing for the VCS. There's some plugins that add some integration into VS Code, and there's one in the works to get Intellij support working, but many of the constructs JJ provides in my opinion necessitate a grounds-up build of a GUI around how JJ works.<p>Right now, [name-redacted] is an MVP in an open beta. I did my best to support all of the core functionality one would need, though there's many nice-to-haves that I am going to add, like native merge support, native splitting, etc. Most of this will be based on feedback from the Beta.<p>I'm really grateful for the great community JJ has built, alongside the HN community itself in the countless VCS-based posts I've read over the years, and am hoping for lots of input here during Beta under real usage - the goal is to be a full-featured desktop GUI for the VCS, similar to many of the great products that are out there for git.
Show HN: Playwright Skill for Claude Code – Less context than playwright-MCP
I got tired of playwright-mcp eating through Claude's 200K token limit, so I built this using the new Claude Skills system. Built it with Claude Code itself.<p>Instead of sending accessibility tree snapshots on every action, Claude just writes Playwright code and runs it. You get back screenshots and console output. That's it.<p>314 lines of instructions vs a persistent MCP server. Full API docs only load if Claude needs them.<p>Same browser automation, way less overhead. Works as a Claude Code plugin or manual install.<p>Token limit issue: <a href="https://github.com/microsoft/playwright-mcp/issues/889" rel="nofollow">https://github.com/microsoft/playwright-mcp/issues/889</a><p>Claude Skills docs: <a href="https://docs.claude.com/en/docs/claude-code/skills" rel="nofollow">https://docs.claude.com/en/docs/claude-code/skills</a>
Show HN: Playwright Skill for Claude Code – Less context than playwright-MCP
I got tired of playwright-mcp eating through Claude's 200K token limit, so I built this using the new Claude Skills system. Built it with Claude Code itself.<p>Instead of sending accessibility tree snapshots on every action, Claude just writes Playwright code and runs it. You get back screenshots and console output. That's it.<p>314 lines of instructions vs a persistent MCP server. Full API docs only load if Claude needs them.<p>Same browser automation, way less overhead. Works as a Claude Code plugin or manual install.<p>Token limit issue: <a href="https://github.com/microsoft/playwright-mcp/issues/889" rel="nofollow">https://github.com/microsoft/playwright-mcp/issues/889</a><p>Claude Skills docs: <a href="https://docs.claude.com/en/docs/claude-code/skills" rel="nofollow">https://docs.claude.com/en/docs/claude-code/skills</a>
Show HN: Playwright Skill for Claude Code – Less context than playwright-MCP
I got tired of playwright-mcp eating through Claude's 200K token limit, so I built this using the new Claude Skills system. Built it with Claude Code itself.<p>Instead of sending accessibility tree snapshots on every action, Claude just writes Playwright code and runs it. You get back screenshots and console output. That's it.<p>314 lines of instructions vs a persistent MCP server. Full API docs only load if Claude needs them.<p>Same browser automation, way less overhead. Works as a Claude Code plugin or manual install.<p>Token limit issue: <a href="https://github.com/microsoft/playwright-mcp/issues/889" rel="nofollow">https://github.com/microsoft/playwright-mcp/issues/889</a><p>Claude Skills docs: <a href="https://docs.claude.com/en/docs/claude-code/skills" rel="nofollow">https://docs.claude.com/en/docs/claude-code/skills</a>
Show HN: Notepad.exe – macOS editor for Swift and Python (now Linux runtime)
I recently released version 1.4 of Notepad.exe, my editor built for macOS. The goal of the app is to let you prototype ideas in Swift or Python with minimal setup - write code, hit Run, skip project scaffolding.<p>This release adds support for a Linux runtime/subsystem, so you can write on macOS and execute snippets in a Linux environment.<p>I’d love to hear any feedback or answer any questions: would a tool like this fit your workflow? What friction remains?
Show HN: Pyversity – Fast Result Diversification for Retrieval and RAG
Hey HN! I’ve recently open-sourced Pyversity, a lightweight library for diversifying retrieval results. Most retrieval systems optimize only for relevance, which can lead to top-k results that look almost identical. Pyversity efficiently re-ranks results to balance relevance and diversity, surfacing items that remain relevant but are less redundant. This helps with improving retrieval, recommendation, and RAG pipelines without adding latency or complexity.<p>Main features:<p>- Unified API: one function (diversify) supporting several well-known strategies: MMR, MSD, DPP, and COVER (with more to come)<p>- Lightweight: the only dependency is NumPy, keeping the package small and easy to install<p>- Fast: efficient implementations for all supported strategies; diversify results in milliseconds<p>Re-ranking with cross-encoders is very popular right now, but also very expensive. From my experience, you can usually improve retrieval results with simpler and faster methods, such as the ones implemented in this package. This helps retrieval, recommendation, and RAG systems present richer, more informative results by ensuring each new item adds new information.<p>Code and docs: github.com/pringled/pyversity<p>Let me know if you have any feedback, or suggestions for other diversification strategies to support!
Show HN: Pyversity – Fast Result Diversification for Retrieval and RAG
Hey HN! I’ve recently open-sourced Pyversity, a lightweight library for diversifying retrieval results. Most retrieval systems optimize only for relevance, which can lead to top-k results that look almost identical. Pyversity efficiently re-ranks results to balance relevance and diversity, surfacing items that remain relevant but are less redundant. This helps with improving retrieval, recommendation, and RAG pipelines without adding latency or complexity.<p>Main features:<p>- Unified API: one function (diversify) supporting several well-known strategies: MMR, MSD, DPP, and COVER (with more to come)<p>- Lightweight: the only dependency is NumPy, keeping the package small and easy to install<p>- Fast: efficient implementations for all supported strategies; diversify results in milliseconds<p>Re-ranking with cross-encoders is very popular right now, but also very expensive. From my experience, you can usually improve retrieval results with simpler and faster methods, such as the ones implemented in this package. This helps retrieval, recommendation, and RAG systems present richer, more informative results by ensuring each new item adds new information.<p>Code and docs: github.com/pringled/pyversity<p>Let me know if you have any feedback, or suggestions for other diversification strategies to support!
Show HN: Pyversity – Fast Result Diversification for Retrieval and RAG
Hey HN! I’ve recently open-sourced Pyversity, a lightweight library for diversifying retrieval results. Most retrieval systems optimize only for relevance, which can lead to top-k results that look almost identical. Pyversity efficiently re-ranks results to balance relevance and diversity, surfacing items that remain relevant but are less redundant. This helps with improving retrieval, recommendation, and RAG pipelines without adding latency or complexity.<p>Main features:<p>- Unified API: one function (diversify) supporting several well-known strategies: MMR, MSD, DPP, and COVER (with more to come)<p>- Lightweight: the only dependency is NumPy, keeping the package small and easy to install<p>- Fast: efficient implementations for all supported strategies; diversify results in milliseconds<p>Re-ranking with cross-encoders is very popular right now, but also very expensive. From my experience, you can usually improve retrieval results with simpler and faster methods, such as the ones implemented in this package. This helps retrieval, recommendation, and RAG systems present richer, more informative results by ensuring each new item adds new information.<p>Code and docs: github.com/pringled/pyversity<p>Let me know if you have any feedback, or suggestions for other diversification strategies to support!
Show HN: A better Hacker News front end
I forked pajecawav's better-hn repo, which turned out to be an excellent foundation to build on. While the original implementation was clean and functional, it didn't quite capture the essence of Hackernews. More importantly, it was missing some features I considered essential for a truly viable alternative.<p>After tinkering with it for a while, I think I've nailed it—at least for my own use case. If it works well for me, chances are others might find it useful too. So I figured, why not share it?<p>Pretty straightforward: no ads, no tracking, no monetization schemes and no intention to do so. Just a simple deployment on Vercel's free tier, which costs me exactly nothing. I'm not expecting millions of users (let's be realistic), but we'll see how it scales if people actually start using it.<p>Any feedback is welcome, or just use it.
Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB
I built Duck-UI, a web-based SQL editor that runs DuckDB entirely in your browser via WebAssembly. No backend required.<p>The Problem: Every time I needed to query csv, parquet, or even to play with SQL, I had to either:
(a) spin up a Jupyter notebook
(b) use the CLI
(c) upload to a hosted service.<p>Friction at every step (TOO MUCH to load a csv or even to test some sql (study)...<p>The Solution: DuckDB's WASM runtime lets us run SQL analysis client-side. Load CSV/JSON/Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine.
What It Does:<p>SQL editor with autocomplete & syntax highlighting
Import CSV, JSON, Parquet, Arrow (local or remote URLs)
Query history, keyboard shortcuts, theme toggle
Persistent storage via OPFS (data survives browser refresh)
Optional: Connect to external DuckDB servers
One-liner Docker deployment or Node 20+ dev server<p>Technical Details:<p>DuckDB compiled to WASM; query execution in-browser
OPFS-backed persistence
Apache 2.0 licensed
Runs on Chrome 88+, Firefox 79+, Safari 14+<p>Use Cases:<p>Learning SQL without setting up databases
Ad-hoc data exploration (CSV → SQL in seconds)
Quick prototyping before shipping to production
Privacy-conscious workflows (no data leaves your browser)<p>GitHub: <a href="https://github.com/ibero-data/duck-ui" rel="nofollow">https://github.com/ibero-data/duck-ui</a>
Live Demo: <a href="https://demo.duckui.com" rel="nofollow">https://demo.duckui.com</a>
Quick Start: docker run -p 5522:5522 ghcr.io/ibero-data/duck-ui:latest<p>Would love feedback on:
(1) Use cases I'm missing
(2) Performance bottlenecks you hit
(3) Features that would make this your default SQL scratchpad.
Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB
I built Duck-UI, a web-based SQL editor that runs DuckDB entirely in your browser via WebAssembly. No backend required.<p>The Problem: Every time I needed to query csv, parquet, or even to play with SQL, I had to either:
(a) spin up a Jupyter notebook
(b) use the CLI
(c) upload to a hosted service.<p>Friction at every step (TOO MUCH to load a csv or even to test some sql (study)...<p>The Solution: DuckDB's WASM runtime lets us run SQL analysis client-side. Load CSV/JSON/Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine.
What It Does:<p>SQL editor with autocomplete & syntax highlighting
Import CSV, JSON, Parquet, Arrow (local or remote URLs)
Query history, keyboard shortcuts, theme toggle
Persistent storage via OPFS (data survives browser refresh)
Optional: Connect to external DuckDB servers
One-liner Docker deployment or Node 20+ dev server<p>Technical Details:<p>DuckDB compiled to WASM; query execution in-browser
OPFS-backed persistence
Apache 2.0 licensed
Runs on Chrome 88+, Firefox 79+, Safari 14+<p>Use Cases:<p>Learning SQL without setting up databases
Ad-hoc data exploration (CSV → SQL in seconds)
Quick prototyping before shipping to production
Privacy-conscious workflows (no data leaves your browser)<p>GitHub: <a href="https://github.com/ibero-data/duck-ui" rel="nofollow">https://github.com/ibero-data/duck-ui</a>
Live Demo: <a href="https://demo.duckui.com" rel="nofollow">https://demo.duckui.com</a>
Quick Start: docker run -p 5522:5522 ghcr.io/ibero-data/duck-ui:latest<p>Would love feedback on:
(1) Use cases I'm missing
(2) Performance bottlenecks you hit
(3) Features that would make this your default SQL scratchpad.
Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB
I built Duck-UI, a web-based SQL editor that runs DuckDB entirely in your browser via WebAssembly. No backend required.<p>The Problem: Every time I needed to query csv, parquet, or even to play with SQL, I had to either:
(a) spin up a Jupyter notebook
(b) use the CLI
(c) upload to a hosted service.<p>Friction at every step (TOO MUCH to load a csv or even to test some sql (study)...<p>The Solution: DuckDB's WASM runtime lets us run SQL analysis client-side. Load CSV/JSON/Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine.
What It Does:<p>SQL editor with autocomplete & syntax highlighting
Import CSV, JSON, Parquet, Arrow (local or remote URLs)
Query history, keyboard shortcuts, theme toggle
Persistent storage via OPFS (data survives browser refresh)
Optional: Connect to external DuckDB servers
One-liner Docker deployment or Node 20+ dev server<p>Technical Details:<p>DuckDB compiled to WASM; query execution in-browser
OPFS-backed persistence
Apache 2.0 licensed
Runs on Chrome 88+, Firefox 79+, Safari 14+<p>Use Cases:<p>Learning SQL without setting up databases
Ad-hoc data exploration (CSV → SQL in seconds)
Quick prototyping before shipping to production
Privacy-conscious workflows (no data leaves your browser)<p>GitHub: <a href="https://github.com/ibero-data/duck-ui" rel="nofollow">https://github.com/ibero-data/duck-ui</a>
Live Demo: <a href="https://demo.duckui.com" rel="nofollow">https://demo.duckui.com</a>
Quick Start: docker run -p 5522:5522 ghcr.io/ibero-data/duck-ui:latest<p>Would love feedback on:
(1) Use cases I'm missing
(2) Performance bottlenecks you hit
(3) Features that would make this your default SQL scratchpad.
Show HN: Land use visualization for European countries
We have another election coming up at the end of this month here in the Netherlands, and how we use our limited land is a hotly debated topic.<p>Last year also I shared this animated hexagonal map of Dutch land use. I've now expanded this to include several more European countries, so you can see what makes Dutch land use so special - or not.<p>If you want to help add more countries, I'd appreciate PRs on GitHub. The map rendering is already there, it only requires land use data which can be found in the SQLite database (at least for EU countries).<p>Github: <a href="https://github.com/vnglst/onsland" rel="nofollow">https://github.com/vnglst/onsland</a>
Previous HN: <a href="https://news.ycombinator.com/item?id=40599763">https://news.ycombinator.com/item?id=40599763</a>
Show HN: Compression-Resistant Data Transfers
Show HN: The Shape of YouTube
A project inspired by <a href="https://www.theshapeofmovies.com/" rel="nofollow">https://www.theshapeofmovies.com/</a>
Submit a YouTube video and get a nice color analysis!
60 seconds maximum because I have a small server, but I hope you'll like it.
I use a Python backend with yt-dlp, and ffmpeg + scipy for the frame processing.
Show HN: The Shape of YouTube
A project inspired by <a href="https://www.theshapeofmovies.com/" rel="nofollow">https://www.theshapeofmovies.com/</a>
Submit a YouTube video and get a nice color analysis!
60 seconds maximum because I have a small server, but I hope you'll like it.
I use a Python backend with yt-dlp, and ffmpeg + scipy for the frame processing.
Show HN: ServiceRadar – open-source Network Observability Platform
ServiceRadar is an open-source platform for distributed, secure network management and observability, scaling to 100k+ devices. Born from frustration with complex traditional NMS tools like Zabbix, it bridges legacy (SNMP/syslog) and modern (gNMI, OTLP) protocols for cloud-native environments.<p>We built ServiceRadar to simplify monitoring hybrid telecom networks, evolving it into a Kubernetes-native solution with Helm and Docker support. It uses mTLS with SPIFFE/SPIRE, NATS JetStream for event streaming (90M+ EPS), and SRQL for intuitive queries. Integrated with OpenTelemetry, Prometheus, and CloudEvents, it fills the network visibility gap in CNCF’s application-focused observability stack.<p>We’re seeking early adopters to try our demo or deploy locally—no sign-up needed. Feedback on usability or contributions for new protocols would be awesome.<p>Quick Start: helm install serviceradar carverauto/serviceradar or docker compose up -d<p>GitHub: <a href="https://github.com/carverauto/serviceradar" rel="nofollow">https://github.com/carverauto/serviceradar</a> (please star!)<p>Docs: <a href="https://docs.serviceradar.cloud" rel="nofollow">https://docs.serviceradar.cloud</a><p>Join our Discord or use GitHub Issues to share thoughts.
Show HN: ServiceRadar – open-source Network Observability Platform
ServiceRadar is an open-source platform for distributed, secure network management and observability, scaling to 100k+ devices. Born from frustration with complex traditional NMS tools like Zabbix, it bridges legacy (SNMP/syslog) and modern (gNMI, OTLP) protocols for cloud-native environments.<p>We built ServiceRadar to simplify monitoring hybrid telecom networks, evolving it into a Kubernetes-native solution with Helm and Docker support. It uses mTLS with SPIFFE/SPIRE, NATS JetStream for event streaming (90M+ EPS), and SRQL for intuitive queries. Integrated with OpenTelemetry, Prometheus, and CloudEvents, it fills the network visibility gap in CNCF’s application-focused observability stack.<p>We’re seeking early adopters to try our demo or deploy locally—no sign-up needed. Feedback on usability or contributions for new protocols would be awesome.<p>Quick Start: helm install serviceradar carverauto/serviceradar or docker compose up -d<p>GitHub: <a href="https://github.com/carverauto/serviceradar" rel="nofollow">https://github.com/carverauto/serviceradar</a> (please star!)<p>Docs: <a href="https://docs.serviceradar.cloud" rel="nofollow">https://docs.serviceradar.cloud</a><p>Join our Discord or use GitHub Issues to share thoughts.
Show HN: Specific (YC F25) – Build backends with specifications instead of code
Hi folks! Iman and I (Fabian) have been building Specific for a while now and are finally opening up our public beta.<p>Specific is a platform for building backend APIs and services entirely through natural-language specifications and tests, without writing code. We then automatically turn your specs into a working system and deploy it for you, along with any infrastructure needed.<p>We know a lot of developers who have already adopted spec-driven development to focus on high-level design and let coding agents take care of implementation. We are attempting to take this even further by making the specs themselves the source of truth. Of course, we can’t blindly trust coding agents to follow the spec, so we also support adding tests that will run to ensure the system behaves as expected and to avoid regressions.<p>There is so much ground to cover, so we are focusing on a smaller set of initial features that in our experience should cover a large portion of backends:<p>- An HTTP server for each project. Authentication can be added by simply stating in the spec how you want to protect your endpoint.<p>- A database automatically spun up and schema configured if the spec indicates persistence is needed.<p>- External APIs can be called. You can even link out to API docs in your specs.<p>You currently can’t see the generated code, but we are working on enabling it. Of course, we don’t claim any ownership of the generated code and will gladly let you export it and continue building elsewhere.<p>Specific is free to try and we are really eager to hear your feedback on it!<p>Try it here: <a href="https://app.specific.dev">https://app.specific.dev</a>