Inspired by others, I’ve listed the hardware and software that I use daily. I’m always looking for ways to improve my workflow, so this list will change over time. In an attempt to better evolve this list, I’ll capture large updates with a yearly blog post.

Last Updated: 2026-05-01

Disclaimer: Some of the links below are affiliate links, which means that if you choose to make a purchase, I will earn a commission. This commission comes at no additional cost to you.

#Hardware

#Setup

  • Autonomous SmartDesk 2 — The frame and tabletop are from Autonomous. Ordered in a rush after moving from NYC and having no desk.
  • UnderWare — Hands On Katie’s 3D-printed under-desk cable management system. Replaced the StarTech finger duct. Modular, neater, and I can print more pieces as the setup changes.
  • Humanscale M8 Monitor Arm — Used in a single arm configuration. Holds the Pro Display XDR up.
  • Libernovo Omni — Replaced the Anthros. Better lumbar support and the recline is much more natural.

#Accessories

#Software

I use a variety of software. At work, I tend to build apps for iOS/macOS, however I also dabble in other platforms for fun or need.

#Apps

#General

  • 1Password — Stores all of my passwords.
  • Arc — Browser that has great organizational features. I’m also testing Dia and Zen to see if either pulls me away.
  • Cleanshot X — Screenshots and Screen Captures. Bound to Hyper+s
  • Hammerspoon — Automation tool. Used to manage windows and other tasks. You can find my config on GitHub.
  • Karabiner Elements — Keyboard customizer. Used to add Hyper and other custom layers. config
  • Alfred — Launcher and clipboard history. Bound to ⌘+␣.

#Development

  • ForkFast git gui with a badass interactive rebase.
  • Proxyman — HTTP Proxy. Magical when working on any networked application.
  • Zed — My go-to editor outside of Xcode. Fast, collaborative, and the multibuffer workflow is a real upgrade.
  • cmux — My terminal. A multiplexer-first app with a built-in browser and tmux-compatible commands. Uses LibGhostty under the hood, so I get the rendering I liked from Ghostty without needing to keep both around.
  • Xcode — 😒

#Productivity

  • Thaw — Menu bar manager. A maintained fork of Ice. I use it to hide away apps I don’t need to see all the time.
  • Itsycal — Menubar app that I replace the builtin Date/Time menubar item. Displays calendar events in a rich format.
  • Obsidian — My note-taking app. I use it for everything from meeting notes to personal journaling.
  • Things — My current task manager. Minimal and beautiful

#AI

  • Claude — My primary chat client. Also where I do most of my coding lately.
  • ChatGPT — Secondary, mostly for image generation and the occasional second opinion.
  • Dictation: I’m rotating through FluidVoice, Handy, and TypeWhisper to figure out which one I want to commit to. Local processing only — I’d rather not ship my mumbling to a server.

#CLI

My dotfiles can be found at nanoxd/dotfiles. Configuring your own environment can increase your productivity.

  • bat — Replaces cat with syntax highlighting and paging.
  • delta — Pretty diffs for git. Wired into git diff, git show, and tig.
  • editorconfig — Maintains consistent coding styles for multiple developers across various editors and IDEs.
  • eza — Replaces ls with modern defaults. Maintained fork of the now-archived exa.
  • fd — Replaces find with a really ergonomic API.
  • fish — My shell of choice. Syntax highlighting, configuration, and improved API ergonomics sold me.
  • fzf — Fuzzy finder. Plugged in to vim, tmux, and my shell.
  • gh — GitHub’s official CLI. Replaced hub for me.
  • goku — Simplifies Karabiner Elements configuration.
  • jq — JSON processor. Indispensable when poking at API responses.
  • just — Command runner. A nicer make for project task scripts.
  • mise — Polyglot version manager. Replaced asdf and a stack of language-specific tools.
  • neovim — Used for every day editing. config
  • ripgrep — Replaces grep/ag ⚡️
  • tiggit TUI. Primarily use it in place of git log.
  • tmux — Terminal Multiplexer. Heavily configured for ease of use. config
  • zoxide — Smarter cd. Jumps to directories I use often by frecency.
  • zsh — When fish is acting up.

#Services

  • Cloudflare Pages — Hosts this site. CI builds on push, free TLS, deploys are fast.
  • Cloudflare Registrar and AWS Route 53 — Domains are split across both today. Slowly consolidating onto Cloudflare.
  • Fastmail — Email and calendar. Custom domains, sane filters, no ads.
  • Kagi — My search engine. Pay for it, get results worth reading.
  • 1Password — Family vault. Password manager for everything that doesn’t belong in the system keychain.