HN
Loading HNDeck
Reading your OPFS layout…

HNDeck, prompt-routed by Gemini Nano

Define columns in plain English. Nano routes stories into them, on-device, free, offline. Your column definitions never leave your browser.

Why I built this

This is a personal learning project for Chrome's Prompt API. Like many people, I noticed Chrome had downloaded Gemini Nano and it was taking a few GB of disk space. I tried using it and found it kind of dumb. Then I tried every idea I could think of to build something useful with it.

This is the closest I got to something that kind of works. Write a short instruction like "AI News" or "no AI" and Nano filters each story locally on your device. No server, no account, no tracking.

Hoping Chrome upgrades the on-device model over time, like Prompt to Diagram which works much better with a larger model.

The page is intentionally editable. Open DevTools, change the HTML or CSS however you like, and HNDeck persists the snapshot. On reload it restores your changes and reapplies the live deck state.

Customize

Customize HNDeck here, or open the browser dev console and edit the page directly. DOM and CSS edits are saved to OPFS as a page snapshot. On reload, HNDeck restores that snapshot, then rerenders app-owned regions like deck columns, column order, prompts, and live story cards. To restore defaults, run await hnDeck.resetLayout() in the console or use Reset layout below.

Column settings

Pick a source and optionally add a custom instruction. Nano filters each story one at a time using your instruction. For User and Search, the title is the username / query.

HN comments

Comments

Select a story to preview comments.

HN search

Search Hacker News