What I Use
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
- Apple iPhone 17 Pro — My phone. I use it for everything, especially for photos.
- Apple 14” MacBook Pro M4 Max — 48GB. My personal machine. Wrote up the upgrade from the M1 Pro — the difference on big builds is silly.
- Apple 14” MacBook Pro M4 Max — 64GB. My work machine. The extra RAM helps when the endpoint security software is feeling especially hungry.
- Apple Pro Display XDR 6K — Splurged a little on this 😅. Picked up the re-released 6K version. Not necessary but it’s a very consistent experience unlike my previous LG Ultrafine 5K.
- Apple Studio Display — Used as a secondary display. It’s a great display for the price.
#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
- CalDigit TS5 Thunderbolt 5 Dock — Replaced the TS4. Adds a few needed ports and acts as a pseudo KVM for any wired peripherals.
- Iqunix MQ80 — Replaced the Rama U80-A. Wireless, low-profile, and the build feels closer to a custom than it has any right to. Stuck with the stock Kailh POM Gold Red linear switches since none of my full-height switches or keycaps fit.
- Apple Magic Trackpad 2 — Black, used on the left hand side of the desk.
- Logitech Lift — Replaced the Ploopy Thumb Trackball. Vertical grip, easier on my wrist for long days.
- With Love Keycadets Desk Mat — Large deskpad to provide a bit of contrast.
- Sony A7R II — Used for streaming and zoom calls. Paired with a Sony 35mm f/1.4 GM Lens.
- Electrovoice RE20 Microphone — Used for streaming and zoom calls. Paired with a Focusrite Vocaster One for input gain and processing.
- Elgato Wave Mic Arm — Holds the microphone in place and out of the way.
#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.
- macOS Tahoe — My primary OS.
#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
- Fork — Fast
gitgui 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— Replacescatwith syntax highlighting and paging.delta— Pretty diffs forgit. Wired intogit diff,git show, andtig.editorconfig— Maintains consistent coding styles for multiple developers across various editors and IDEs.eza— Replaceslswith modern defaults. Maintained fork of the now-archivedexa.fd— Replacesfindwith a really ergonomic API.fish— My shell of choice. Syntax highlighting, configuration, and improved API ergonomics sold me.fzf— Fuzzy finder. Plugged in tovim,tmux, and my shell.gh— GitHub’s official CLI. Replacedhubfor me.goku— Simplifies Karabiner Elements configuration.jq— JSON processor. Indispensable when poking at API responses.just— Command runner. A nicermakefor project task scripts.mise— Polyglot version manager. Replaced asdf and a stack of language-specific tools.neovim— Used for every day editing. configripgrep— Replacesgrep/ag⚡️tig—gitTUI. Primarily use it in place ofgit log.tmux— Terminal Multiplexer. Heavily configured for ease of use. configzoxide— Smartercd. Jumps to directories I use often by frecency.zsh— Whenfishis 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.