🛠️ Hacker News Tools
Showing 3261–3280 of 4517 tools from Hacker News
Last Updated
July 30, 2026 at 04:31 PM
[Other] Show HN: Minimal DL library in C – 24 NAIVE CUDA/CPU ops, autodiff, Python API
Show HN: High-Performance Wavelet Matrix for Python, Implemented in Rust
Show HN (score: 7)[Code Quality] Show HN: High-Performance Wavelet Matrix for Python, Implemented in Rust I built a Rust-powered Wavelet Matrix library for Python.<p>There were surprisingly few practical Wavelet Matrix implementations available for Python, so I implemented one with a focus on performance, usability, and typed APIs. It supports fast rank/select, top-k, quantile, range queries, and even dynamic updates.<p>Feedback welcome!
Show HN: GitForms – Zero-cost contact forms using GitHub Issues as database
Show HN (score: 33)[Other] Show HN: GitForms – Zero-cost contact forms using GitHub Issues as database got tired of paying $29–99/month for simple contact forms on landing pages and side projects (Typeform, Tally, etc.).So I built GitForms: an open-source contact form that stores submissions as GitHub Issues.How it works:Form runs on your Next.js 14 site (Tailwind + TypeScript) On submit → creates a new Issue in your repo via GitHub API You get instant email notifications from GitHub (free)<p>Zero ongoing costs:No database, no backend servers Deploy on Vercel/Netlify free tier in minutes Configurable via JSON (themes, text, multi-language)<p>Perfect for MVPs, landing pages, portfolios, or any low-volume use case.Repo: <a href="https://github.com/Luigigreco/gitforms" rel="nofollow">https://github.com/Luigigreco/gitforms</a> License: CC-BY-NC-SA-4.0 (non-commercial only – fine for personal projects, not client work).Curious what HN thinks: would you use this? Any obvious improvements or edge cases I missed?Thanks!
Show HN: Tonbo – an embedded database for serverless and edge runtimes
Show HN (score: 5)[Database] Show HN: Tonbo – an embedded database for serverless and edge runtimes
Linux Kernel Rust Code Sees Its First CVE Vulnerability
Hacker News (score: 86)[Other] Linux Kernel Rust Code Sees Its First CVE Vulnerability
A Safer Container Ecosystem with Docker: Free Docker Hardened Images
Hacker News (score: 161)[Other] A Safer Container Ecosystem with Docker: Free Docker Hardened Images
A terminal emulator that runs in your terminal. Powered by Turbo Vision
Hacker News (score: 53)[Other] A terminal emulator that runs in your terminal. Powered by Turbo Vision
Log level 'error' should mean that something needs to be fixed
Hacker News (score: 15)[Other] Log level 'error' should mean that something needs to be fixed
[CLI Tool] Show HN: Skouriasmeno Papaki – S3 transfer tool, up to 12x faster than AWS-CLI
I ported JustHTML from Python to JavaScript with Codex CLI and GPT-5.2 in hours
Hacker News (score: 91)[Other] I ported JustHTML from Python to JavaScript with Codex CLI and GPT-5.2 in hours
Show HN: A community-curated list of BYOC (Bring Your Own Cloud) vendors
Show HN (score: 9)[Other] Show HN: A community-curated list of BYOC (Bring Your Own Cloud) vendors Hi HN,<p>I’m from the team at Nuon. While building in the Bring Your Own Cloud (BYOC) space, we realized there wasn't a centralized, community-driven resource like awesome-selfhosted.net for managed software that lives in the customer's VPC.<p>We hope software vendors will open a PR and add their BYOC offerings.
Chat-tails: Throwback terminal chat, built on Tailscale
Hacker News (score: 37)[Other] Chat-tails: Throwback terminal chat, built on Tailscale
Show HN: Deterministic PCIe Diagnostics for GPUs on Linux
Hacker News (score: 10)[Other] Show HN: Deterministic PCIe Diagnostics for GPUs on Linux I built a small Linux tool to deterministically verify GPU PCIe link health and bandwidth.<p>It reports: - Negotiated PCIe generation and width - Peak Host→Device and Device→Host memcpy bandwidth - Sustained PCIe TX/RX utilization via NVML - A rule-based verdict derived from observable hardware data only<p>This exists because PCIe issues (Gen downgrades, reduced lane width, risers, bifurcation) are often invisible at the application layer and can’t be fixed by kernel tuning or async overlap.<p>Linux-only: it relies on sysfs and PCIe AER exposure that Windows does not provide.
Show HN: I built the fastest RSS reader in Zig
Show HN (score: 25)[Other] Show HN: I built the fastest RSS reader in Zig Well, I certainly tried. I had to, because it has a certain quirk inspired by "digital minimalism."<p>The quirk is that it only allows you to fetch new articles once per day (or X days).<p>Why? Let me explain...<p>I want my internet content to be like a boring newspaper. You get it in the morning, and you read the whole thing while sipping your morning coffee, and then you're done! No more new information for today. No pings, no alerts, peace, quiet, zen, etc.<p>But with that, I needed it to be able to fetch all articles from my hundreds of feeds in one sitting. This is where Zig and curl optimisations come in. I tried to do all the tricks in the book. If I missed something, let me know!<p>First off, I'm using curl multi for the network layer. The cool thing is it automatically does HTTP/2 multiplexing, which means if your feeds are hosted on the same CDN it reuses the same connection. I've got it configured to handle 50 connections total with up to 6 per host, which seems to be the sweet spot before servers start getting suspicious. Also, conditional GETs. If a feed hasn't changed since last time, the server just says "Not Modified" and we bail immediately.<p>While curl is downloading feeds, I wouldn't want CPU just being idle so the moment curl finishes downloading a single feed, it fires a callback that immediately throws the XML into a worker thread pool for parsing. The main thread keeps managing all the network stuff while worker threads are chewing through XML in parallel. Zig's memory model is perfect for this. Each feed gets its own ArenaAllocator, which is basically a playground where you can allocate strings during parsing, then when we're done, we just nuke the entire arena in one go.<p>For parsing itself, I'm using libexpat because it doesn't load the entire XML into memory like a DOM parser would. This matters because some podcast feeds especially are like 10MB+ of XML. So with smart truncation we download the first few X mb's (configurable), scan backwards to find the last complete item tag, cut it there, and parse just that. Keeps memory usage sane even when feed sizes get massive.<p>And for the UI I just pipe everything to the system's "less" command. You get vim navigation, searching, and paging for free. Plus I'm using OSC 8 hyperlinks, so you can actually click links to open them on your browser. Zero TUI framework needed. I've also included OPML import/export and feed groups as additional features.<p>The result: content from hundreds of RSS feeds retrieved in matter of seconds, and peace of mind for the rest of the day.<p>The code is open source and MIT licensed. If you have ideas on how to make it even faster or better, comment below. Feature requests and other suggestions are also welcome, here or GitHub.
The GitHub Actions control plane is no longer free
Hacker News (score: 183)[Other] The GitHub Actions control plane is no longer free
GitHub will begin charging for self-hosted action runners on March 2026
Hacker News (score: 185)[Other] GitHub will begin charging for self-hosted action runners on March 2026
Show HN: Ducktape – a tiny HTTP/2 wrapper around DuckDB's Appender API
Show HN (score: 7)[Other] Show HN: Ducktape – a tiny HTTP/2 wrapper around DuckDB's Appender API Hi HN! I’m an engineer at Artie where we do real-time data replication.<p>We were adding MotherDuck as a destination and the first version just used DuckDB’s Go driver directly. It worked great on my machine… until we wired it into our Transfer service (<a href="https://github.com/artie-labs/transfer" rel="nofollow">https://github.com/artie-labs/transfer</a>).<p>Because the driver requires CGO, our cross-compiles to amd64 and arm64 started failing, we lost our easy static binaries, and our Docker images had to pull in C toolchains and system libraries just to support one dependency. We tried isolating the CGO bits in a separate module, but it still caused CI failures and forced us to rewrite chunks of our build pipeline. At that point it was clear we didn’t want CGO anywhere near our main service.<p>So I built ducktape: a tiny standalone microservice that wraps DuckDB’s Appender API behind HTTP/2 streams. Clients stream NDJSON over HTTP/2, and ducktape appends directly into DuckDB on the other side. No CGO in the main codebase, and we keep our cross-platform, pure-Go build story.<p>The overhead was surprisingly low in benchmarks: ~757 MiB/sec over HTTP/2 vs ~848 MiB/sec in-process — about 90% of native performance but over the network.<p>ducktape is open source and MIT licensed: <a href="https://github.com/artie-labs/ducktape" rel="nofollow">https://github.com/artie-labs/ducktape</a><p>I’d love feedback, especially if you’ve tackled CGO isolation differently or have ideas to squeeze out more performance!
AIsbom – open-source CLI to detect "Pickle Bombs" in PyTorch models
Hacker News (score: 41)[CLI Tool] AIsbom – open-source CLI to detect "Pickle Bombs" in PyTorch models
Gh-actions-lockfile: generate and verify lockfiles for GitHub Actions
Hacker News (score: 30)[Other] Gh-actions-lockfile: generate and verify lockfiles for GitHub Actions