Show HN: Rust -> WASM, K-Means Color Quantization Crate for Image-to-Pixel-Art

Hacker News (score: 12)
Found: June 26, 2025
ID: 45

Description

Show HN: Rust -> WASM, K-Means Color Quantization Crate for Image-to-Pixel-Art

More from Hacker

I built MindMaps for Linux and Git cmdz with quiz, typing game and cheatsheet

I built MindMaps for Linux and Git cmdz with quiz, typing game and cheatsheet

Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB

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&#x27;s WASM runtime lets us run SQL analysis client-side. Load CSV&#x2F;JSON&#x2F;Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine. What It Does:<p>SQL editor with autocomplete &amp; 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:&#x2F;&#x2F;github.com&#x2F;ibero-data&#x2F;duck-ui" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ibero-data&#x2F;duck-ui</a> Live Demo: <a href="https:&#x2F;&#x2F;demo.duckui.com" rel="nofollow">https:&#x2F;&#x2F;demo.duckui.com</a> Quick Start: docker run -p 5522:5522 ghcr.io&#x2F;ibero-data&#x2F;duck-ui:latest<p>Would love feedback on: (1) Use cases I&#x27;m missing (2) Performance bottlenecks you hit (3) Features that would make this your default SQL scratchpad.

Database Linting and Analysis for PostgreSQL

Database Linting and Analysis for PostgreSQL

Show HN: Kekkai – a simple, fast file integrity monitoring tool in Go

Show HN: Kekkai – a simple, fast file integrity monitoring tool in Go I built a tool called *Kekkai* for file integrity monitoring in production environments. It records file hashes during deployment and later verifies them to detect unauthorized modifications (e.g. from OS command injection or tampering).<p>Why it matters:<p>* Many web apps (PHP, Ruby, Python, etc.) on AWS EC2 need a lightweight way to confirm their code hasn’t been changed. * Traditional approaches that rely on metadata often create false positives. * Kekkai checks only file content, so it reliably detects real changes. * I’ve deployed it to an EC2 PHP application in production, and it’s working smoothly so far.<p>Key points:<p>* *Content-only hashing* (ignores timestamps&#x2F;metadata) * *Symlink protection* (detects swaps&#x2F;changes) * *Secure S3 storage* (deploy servers write-only, app servers read-only) * *Single Go binary* with minimal dependencies<p>Would love feedback from others running apps on EC2 or managing file integrity in production.

Show HN: Gocd – a lightweight Go-based CI/CD tool that runs on your dev machine

Show HN: Gocd – a lightweight Go-based CI/CD tool that runs on your dev machine I built a small project called gocd because I wanted an easy way to deploy changes from GitHub pull requests without spinning up a full CI&#x2F;CD stack.<p>The idea is simple: instead of setting up runners, servers, or cloud infrastructure, you can just run it on your laptop (or a small server). It integrates with GitHub issues and PRs, automates builds and deploys, and makes it easy to access the running app remotely (e.g. over something like Tailscale).<p>For me, this solved the problem of quickly testing and deploying code from issues&#x2F;PRs in a lightweight way. Existing CI&#x2F;CD systems felt like overkill for that use case.<p>Repo: <a href="https:&#x2F;&#x2F;github.com&#x2F;simonjcarr&#x2F;gocd" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;simonjcarr&#x2F;gocd</a><p>I’d love feedback from the community β€” especially on whether this minimal approach to CI&#x2F;CD is something others would find useful, and what features you’d expect in a tool like this.

Show HN: Pbar.io – Distributed progress bars that work in terminals and browsers

Show HN: Pbar.io – Distributed progress bars that work in terminals and browsers I built pbar.io because I was tired of SSH&#x27;ing into servers to check if my data processing scripts were still running, or worse, having them finish&#x2F;crash without knowing.<p>It&#x27;s a simple REST API that lets you create and update progress bars from anywhere. The same progress bar can be viewed as terminal output (with ANSI colors), in a browser, or consumed as JSON.<p>I&#x27;m actually tracking this HN discussion with pbar. The progress bar increases with each comment - watch it live as we discuss!<p>Web: <a href="https:&#x2F;&#x2F;pbar.io&#x2F;Y8yg3BG" rel="nofollow">https:&#x2F;&#x2F;pbar.io&#x2F;Y8yg3BG</a> Terminal: curl <a href="https:&#x2F;&#x2F;pbar.io&#x2F;api&#x2F;bars&#x2F;Y8yg3BG" rel="nofollow">https:&#x2F;&#x2F;pbar.io&#x2F;api&#x2F;bars&#x2F;Y8yg3BG</a><p>More features that emerged from my own use cases: - Hierarchical progress bars (parent bars auto-aggregate children) - Python package (pip install pbar-io) that wraps tqdm - just swap the import - QR codes to monitor progress on your phone while away from desk - No auth required for quick prototypes<p>Curious what use cases you might have for this!

Sparrow: C++20 Idiomatic APIs for the Apache Arrow Columnar Format

Sparrow: C++20 Idiomatic APIs for the Apache Arrow Columnar Format

Intuitive find and replace CLI (sed alternative)

Intuitive find and replace CLI (sed alternative)

Nyxstone: An LLVM-based (Dis)assembly Framework

Nyxstone: An LLVM-based (Dis)assembly Framework

Show HN: OpenAnimation – KMP app for exploring and editing Lottie animations

Show HN: OpenAnimation – KMP app for exploring and editing Lottie animations I’ve been building OpenAnimation, a Kotlin Multiplatform app that lets you discover, view, and edit Lottie animations.<p>You can try it live here: <a href="https:&#x2F;&#x2F;openanimation.web.app" rel="nofollow">https:&#x2F;&#x2F;openanimation.web.app</a><p>Source code is available here: <a href="https:&#x2F;&#x2F;github.com&#x2F;orispok&#x2F;OpenAnimationApp" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;orispok&#x2F;OpenAnimationApp</a><p>I’d love to hear your thoughts and feedback!

Mangle – a language for deductive database programming

Mangle – a language for deductive database programming

PG Auto Upgrade – Docker (and K8s) container to auto upgrade your database

PG Auto Upgrade – Docker (and K8s) container to auto upgrade your database

Graphene OS: a security-enhanced Android build

Graphene OS: a security-enhanced Android build

Show HN: tsbro – TypeScript for the Browser, No Build Step

Show HN: tsbro – TypeScript for the Browser, No Build Step

Show HN: Clippy – a better pbcopy for macOS that handles files properly

Show HN: Clippy – a better pbcopy for macOS that handles files properly I made clippy because pbcopy can&#x27;t do something I needed every day: copy files to paste into GUI apps. When you pbcopy &lt; image.png, you get raw bytes instead of a file that Slack or email can use.<p>Clippy fixes this:<p>- clippy report.pdf β†’ ⌘V into any app uploads the file<p>- curl image.png | clippy β†’ pipes become pasteable files<p>- clippy *.jpg β†’ multiple files at once<p>- Text files still work like pbcopy<p>Technical: Direct Objective-C bindings via CGo. Copies file references (like Finder), not contents. Auto-cleans temp files. No AppleScript hacks.<p>Install: brew install neilberkman&#x2F;clippy&#x2F;clippy

Show HN: Flint – Write code your way while ensuring remote consistency

Show HN: Flint – Write code your way while ensuring remote consistency I just released my biggest project yet: Flint, a language-agnostic Git wrapper that lets developers code using their own formatting preferences locally, while automatically enforcing the project&#x27;s style on push.<p>No more fighting over tabs vs spaces or dealing with noisy diffs.<p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;capsulescodes&#x2F;flint">https:&#x2F;&#x2F;github.com&#x2F;capsulescodes&#x2F;flint</a> Documentation: <a href="https:&#x2F;&#x2F;flintable.com&#x2F;docs&#x2F;flint&#x2F;" rel="nofollow">https:&#x2F;&#x2F;flintable.com&#x2F;docs&#x2F;flint&#x2F;</a> Article: <a href="https:&#x2F;&#x2F;capsules.codes&#x2F;en&#x2F;blog&#x2F;flintable&#x2F;en-flintable-introducing-flint" rel="nofollow">https:&#x2F;&#x2F;capsules.codes&#x2F;en&#x2F;blog&#x2F;flintable&#x2F;en-flintable-introd...</a>

No other tools from this source yet.