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: 2024-10-12

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

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.

  • macOS Sequoia — My primary OS. Still too early to tell if it’s a good release.

Apps

General

  • 1Password — Stores all of my passwords.
  • Arc — Browser that has great organizational features.
  • 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
  • Raycast — Spotlight on steroids. I use it for quick access to apps, scripts, and workflows. ⌘+␣

Development

  • ForkFast git gui with a badass interactive rebase.
  • Proxyman — HTTP Proxy. Magical when working on any networked application.
  • Visual Studio Code — My other go-to editor when working in an LSP language. Especially useful when working on TypeScript projects.
  • Wezterm - My terminal emulator of choice. Uses WebGPU for rendering.
  • Xcode — 😒

Productivity

  • Ice — Powerful menu bar manager for macOS. I use it to hide away apps that 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

CLI

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

  • editorconfig — Maintains consistent coding styles for multiple developers across various editors and IDEs.
  • exa — Replaces ls with modern defaults
  • 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.
  • goku — Simplifies Karabiner Elements configuration
  • hub — An extension to git. Simplifies GitHub related tasks, useful when maintaining any OSS repo
  • 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
  • zsh — When fish is acting up.

Services

Coming Soon