{"title":"Software","description":"","products":[{"product_id":"markdown-snapshot","title":"Markdown Snapshot","description":"\u003cp\u003eMarkdown Snapshot (or \u003ccode\u003emds\u003c\/code\u003e at the prompt) is a single-purpose CLI: feed it a markdown file, get back beautifully typeset HTML that prints to PDF cleanly. That's the whole product.\u003c\/p\u003e\u003cp\u003eIt exists because every \"markdown to PDF\" workflow we tried either required configuring LaTeX (life is short), depended on a browser print dialog with default Times New Roman (charmless), or produced something that looked like a printed Reddit comment (insulting to the source material).\u003c\/p\u003e\u003cp\u003e\u003ccode\u003emds\u003c\/code\u003e produces HTML calibrated for print: real page margins (letter or A4), proper widow\/orphan handling, code that doesn't break across pages, links that don't underline in print mode. Five themes including a Fraunces serif treatment. Works offline. No telemetry. Zero external dependencies.\u003c\/p\u003e\u003ch2\u003eWorkflow\u003c\/h2\u003e\u003cpre\u003e\u003ccode\u003emds essay.md                  # → essay.html\nmds essay.md --theme editorial\nmds README.md -o paper.html\n\u003c\/code\u003e\u003c\/pre\u003e\u003cp\u003eOpen the HTML in any browser, hit Cmd\/Ctrl+P, Save as PDF. Done.\u003c\/p\u003e\u003ch2\u003eThemes\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003epaper\u003c\/strong\u003e (default) — Fraunces body, Inter headings, warm off-white\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003enotebook\u003c\/strong\u003e — Tight, all-Inter, denser pages\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eeditorial\u003c\/strong\u003e — Wide-margin longform with serif headings\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003edark\u003c\/strong\u003e — Inverted for screen reading\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eprint\u003c\/strong\u003e — High-contrast, optimized for laser printers\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43342330855513,"sku":null,"price":14.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/markdown-snapshot.png?v=1779608357"},{"product_id":"pace","title":"Pace","description":"\u003cp\u003ePace is a command-line time tracker designed for people who already live in a terminal. It's not Toggl. It's not Harvest. It's a single binary, one config file, and a half-dozen commands you'll remember within a day.\u003c\/p\u003e\u003cp\u003eType \u003ccode\u003epace start \"writing the Q2 plan\"\u003c\/code\u003e and your session starts. Type \u003ccode\u003epace stop\u003c\/code\u003e when you're done. Type \u003ccode\u003epace week\u003c\/code\u003e to see what you actually spent your time on this week. That's most of it.\u003c\/p\u003e\u003ch2\u003eWhy we made it\u003c\/h2\u003e\u003cp\u003eWe tried four other time trackers. They all wanted to be the center of our workflow. We wanted something that stayed out of the way and answered the one question we actually had: \u003cem\u003ewhere did the last week go?\u003c\/em\u003e\u003c\/p\u003e\u003ch2\u003eCommands\u003c\/h2\u003e\u003cpre\u003e\u003ccode\u003epace start \"task description\"  # begin a session\npace stop                       # end current session\npace status                     # what's running\npace today                      # today's sessions\npace week                       # this week summary\npace export csv \u0026gt; log.csv      # export everything\n\u003c\/code\u003e\u003c\/pre\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43342330921049,"sku":null,"price":9.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/pace.png?v=1779608357"},{"product_id":"focus-timer","title":"Focus","description":"\u003cp\u003eFocus is a single-purpose CLI timer for people who already live in a terminal and just want a clean way to do a 50-minute block without being interrupted. It is not a Pomodoro app. It does one round. You start it, it tells the system to silence notifications, it counts down, it gently rings when you are done, it restores notifications.\u003c\/p\u003e\n\u003ch2\u003eCommands\u003c\/h2\u003e\n\u003cpre\u003e\u003ccode\u003efocus 50               # start a 50-minute session\nfocus 25 \"reading\"     # start a session with a label\nfocus stop             # cancel the current session\nfocus log              # see today's sessions\n\u003c\/code\u003e\u003c\/pre\u003e\n\u003cp\u003eThat is the whole product. No accounts, no sync, no streaks, no charts. It writes a small log file in your home directory if you want to look back, and gets out of the way otherwise.\u003c\/p\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43342743699545,"sku":null,"price":7.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/focus-timer.png?v=1779608357"},{"product_id":"slip-clipboard","title":"Slip","description":"\u003cp\u003eSlip is a CLI clipboard manager for people who copy a lot of small things (function signatures, IDs, snippets, addresses) and lose them five minutes later when they copy the next thing.\u003c\/p\u003e\n\u003cp\u003eEverything Slip captures lives in a plain-text directory in your home folder. You can edit it, search it, back it up, and walk away from Slip at any time without losing anything. The whole tool is roughly 200 lines of code and you are welcome to read it.\u003c\/p\u003e\n\u003ch2\u003eCommands\u003c\/h2\u003e\n\u003cpre\u003e\u003ccode\u003eslip save \"label\"       # save current clipboard under a label\nslip get label          # copy a saved item back to clipboard\nslip list               # list everything you have saved\nslip search query       # search by label or content\nslip rm label           # remove a slip\n\u003c\/code\u003e\u003c\/pre\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43342743732313,"sku":null,"price":12.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/slip-clipboard.png?v=1779608357"},{"product_id":"streak","title":"Streak","description":"\u003cp\u003eStreak is a command-line habit tracker for people who've tried five habit apps and ended up with more guilt than progress. The whole point: a small, well-maintained set of habits, checked in daily (under 30 seconds), reviewed weekly. No leaderboards. No \"you broke your streak!\" notifications. No streak counters in the UI (despite the name, that's the joke).\u003c\/p\u003e\n\u003cp\u003eYou add a habit. You check in when you do it. On Sunday, \u003ccode\u003estreak week\u003c\/code\u003e shows you what you actually did. If you missed a day, the cell stays empty. Nothing yells at you. The week scrolls on.\u003c\/p\u003e\n\u003ch2\u003eCommands\u003c\/h2\u003e\n\u003cpre\u003e\u003ccode\u003estreak add \"morning walk\"      # add a habit\nstreak check morning-walk      # mark today done\nstreak list                    # today's habits\nstreak week                    # Mon-Sun grid\nstreak rm morning-walk         # remove a habit\n\u003c\/code\u003e\u003c\/pre\u003e\n\u003ch2\u003eWhy we made it\u003c\/h2\u003e\n\u003cp\u003eEvery habit app we tried wanted to be the center of our workflow. We wanted something that took five seconds, lived in the terminal, and respected our psychology. So we wrote it.\u003c\/p\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43346312069209,"sku":null,"price":12.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/streak.png?v=1779608356"},{"product_id":"tomes","title":"Tomes","description":"\u003cp\u003eTomes is a command-line reading log for people who read regularly and want a record without the overhead of Goodreads. Three categories (to-read, reading, finished), one place for pull-quotes, eight commands you'll remember inside a day.\u003c\/p\u003e\n\u003cp\u003eAn evening with Tomes looks like:\u003c\/p\u003e\n\u003cpre\u003e\u003ccode\u003etomes finish project-hail-mary --rating 5\ntomes quote project-hail-mary \"If we lose our humanity, we lose ourselves.\"\ntomes add \"The Overstory\" --author \"Richard Powers\"\ntomes start the-overstory\n\u003c\/code\u003e\u003c\/pre\u003e\n\u003ch2\u003eWhy we made it\u003c\/h2\u003e\n\u003cp\u003eGoodreads asks for too much (ratings, reviews, social feeds) and gives back too little (recommendations skewed by what your network reads, not what you'd love). Tomes asks for very little: a quick log when you finish something, an optional pull-quote, a rating you can skip. The point is the record, not the metrics.\u003c\/p\u003e\n\u003ch2\u003eCommands\u003c\/h2\u003e\n\u003cpre\u003e\u003ccode\u003etomes add \"Title\" --author \"Name\"\ntomes start \u0026lt;slug\u0026gt;\ntomes finish \u0026lt;slug\u0026gt; --rating 4\ntomes quote \u0026lt;slug\u0026gt; \"...\"\ntomes list                # all books\ntomes current             # what you're reading\ntomes log                 # finished, chronological\ntomes search \u0026lt;query\u0026gt;      # title, author, or quote\n\u003c\/code\u003e\u003c\/pre\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43346312134745,"sku":null,"price":14.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/tomes.png?v=1779608356"},{"product_id":"jot","title":"jot","description":"\u003cp\u003ejot is a command-line daily journal for people who want to write a little every day without opening yet another app. You type \u003ccode\u003ejot\u003c\/code\u003e, your editor opens today's entry, you write what you want, you save and close. That's it.\u003c\/p\u003e\u003cp\u003eBehind the scenes, every entry is a plain markdown file in \u003ccode\u003e~\/.jot\/YYYY\/MM\/\u003c\/code\u003e. You can back it up with \u003ccode\u003ecp\u003c\/code\u003e, sync it with Dropbox or Syncthing, version it with git, search it with \u003ccode\u003egrep\u003c\/code\u003e, or just leave it. Nothing about jot ties you to jot.\u003c\/p\u003e\u003ch2\u003eCommands\u003c\/h2\u003e\u003cpre\u003e\u003ccode\u003ejot                       # opens today's entry in $EDITOR\njot yesterday             # opens yesterday's entry\njot 2026-05-22            # opens a specific day\njot list                  # recent entries\njot search \"the project\"  # find entries mentioning anything\njot today                 # pipe today's text to stdout\njot stats                 # writing streak + word counts\n\u003c\/code\u003e\u003c\/pre\u003e\u003ch2\u003eWhy we made it\u003c\/h2\u003e\u003cp\u003eNotion is too much. Day One is too much. A text file in a folder is exactly the right amount. jot is the smallest thing that makes writing daily friction-free.\u003c\/p\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43347090571353,"sku":null,"price":9.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/jot.png?v=1779608357"},{"product_id":"dotfiles-starter","title":"Dotfiles Starter","description":"\u003cp\u003eA starter set of dotfiles for the solo developer or indie maker. Every config is commented so you can edit confidently and know what each setting does. Not opinionated about your workflow — opinionated about not making you debug your shell on day one.\u003c\/p\u003e\u003ch2\u003eWhat's included\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003e.zshrc\u003c\/strong\u003e — smart history, vim-style prompt with git branch, cleaner completion, color output\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e.gitconfig\u003c\/strong\u003e — \u003ccode\u003egit lg\u003c\/code\u003e for a pretty log graph, productivity aliases, rebase-by-default pull\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e.tmux.conf\u003c\/strong\u003e — vim-style pane navigation, mouse on, true-color, quiet status bar\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e.vimrc\u003c\/strong\u003e — line numbers, smart indenting, persistent undo, custom statusline, no plugins required\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ealiases.sh\u003c\/strong\u003e — \u003ccode\u003ell\u003c\/code\u003e, \u003ccode\u003eg\u003c\/code\u003e, \u003ccode\u003egs\u003c\/code\u003e, \u003ccode\u003eserve\u003c\/code\u003e, and the others you'll wonder how you lived without\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003efunctions.sh\u003c\/strong\u003e — \u003ccode\u003emkcd\u003c\/code\u003e, \u003ccode\u003eextract\u003c\/code\u003e, \u003ccode\u003egitclean\u003c\/code\u003e, \u003ccode\u003eport\u003c\/code\u003e, \u003ccode\u003eweather\u003c\/code\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003einstall.sh\u003c\/strong\u003e — cautious one-command installer (asks before overwriting, backs up your existing files)\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Vellumshore","offers":[{"title":"Default Title","offer_id":43347096010841,"sku":null,"price":9.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0737\/3802\/7097\/files\/dotfiles-starter.png?v=1779608356"}],"url":"https:\/\/uyykq7-pe.myshopify.com\/collections\/software.oembed","provider":"Vellumshore","version":"1.0","type":"link"}