Hack Shelf
Commands, fixes and small discoveries you want to find again — one tap to copy.
Topics & tags
How it works
- Tap + New (or press
n). Only the title is required; fill just the boxes you need. - Save (or press
Ctrl+Enter). Once you sign in with Google, the shelf lives inhack-shelf.jsonin your own Drive, so every device sees the same entries. - Find it again with search, the topic and tag sidebar, or the Smart order, which keeps pinned and most-used entries on top. The Copy on a closed card copies its main code in one tap.
Not sure where to start? Scroll down to Templates and tap Use this template.
What goes in each box
| Box | What to put | Example |
|---|---|---|
| Title | The words you would type when searching for it later | Find what is using a port on Windows |
| Topic | The one shelf section it lives in. Pick + New topic… to create one | Windows |
| Tags | Labels it touches, comma-separated. Spaces become dashes, capitals become lower case | windows, ports, network |
| Write-up | What it does, when to use it, what to watch out for. Formatting below | Fixes “address already in use”. |
| Code | The exact command or snippet. The first block is what the card’s one-tap Copy takes | netstat -ano | findstr :8080 |
| Fields | Facts as key → value. A value needs a key. Tick Sensitive to hide a value on screen | Port → 5432 |
Write-up formatting
This is the whole set. Anything else you type, HTML included, is shown exactly as typed.
| For | You type | You get |
|---|
Topic or tag?
Topic is where it lives: exactly one per entry, shown as the sections of the sidebar. Tags are what it touches: as many as you like, and tag filters combine, so #windows + #network shows entries that have both.
A starter set: topics Windows, Git, Java & Spring, Kafka, Databases, Docker, Interview notes; tags such as network, ports, performance, debugging, gotcha, config.
Templates
Five kinds of entry. Use this template opens the editor already filled in — change what you like; nothing is saved until you press Save.
Finding and reusing
| To | Do this |
|---|---|
| Find something | Type in search (/ jumps there). Every word must match; titles, write-ups, code, field keys, tags and topics all count. Esc clears it |
| Copy the main thing | Copy on the closed card: the first code block, or the first field when there is no code |
| Copy one part | Tap the title to open the card; each code block and field has its own Copy |
| Keep it on top | Open it and tap Pin |
| Share it | Copy as Markdown — sensitive values come out as (hidden) |
| Make a variation | Duplicate, then edit the copy |
| Keep knowledge fresh | The Revisit tab (r) brings back entries untouched for 30 days. Still useful hides one for twice as long each time; if it is outdated, delete it |
| Back it up | ⚙ Settings → Export JSON |
Keys: n new · / search · r Revisit · ? this guide · Ctrl+Enter save · Esc close.
Revisit: a short review, not a to-do list
Why it exists. Things you write down and never look at again fade: you forget you have them, or they go stale when a tool or a version moves on. Revisit brings those back, a few at a time, so you can keep, fix or drop them.
What brings an entry back. Every entry remembers the last day you did anything with it: created, edited, copied, opened, or answered here. Once that day is 30 days old, the entry is due and the Revisit tab shows a count. Entries you use normally never come back, because using them restarts the clock. Pinned entries never come back — you see them every day already.
| Answer | When | What happens |
|---|---|---|
| Still useful | It is right and worth keeping | It goes away for twice as long: 30 → 60 → 120 → 240 → 365 days, then once a year |
| Edit | It is outdated or unclear | Fix it; saving restarts its clock |
| Not useful any more | You will never need it again | It is deleted, after a “Sure?” |
Example. You save “Kafka consumer keeps rebalancing” on 1 March and do not touch it. On 31 March it shows up in Revisit. You read it and tap Still useful: it returns around 30 May, 60 days later. Tap it again then and the next wait is 120 days. If you copy from it in between, the clock restarts from that day.
How to treat it. A two-minute look once a week is plenty; an empty tab is not a target. Up to 5 show at a time, oldest first; answer them and Show the next loads more. ⚙ Settings changes the batch (3, 5 or 10) and the first wait (14, 30, 60 or 90 days).
Sensitive values
A field ticked Sensitive shows as dots until you tap Reveal, can be copied without revealing it, is left out of search, and is hidden in Copy as Markdown. It is still stored unencrypted in your Drive file, so keep it to throwaway local passwords. Real passwords and API keys belong in Strongroom; the editor warns you when something looks like a real key.
Habits that pay off
- Name titles the way you will search: “Find what is using a port” beats “netstat trick”.
- One idea per entry, so Copy and search stay precise.
- Put the thing you copy most first — the closed card’s Copy takes the first code block.
- Add a Source field with a link when you learned it from a doc or an article.