Last Updated:

Software I use, gadgets I love, and other things I recommend. I see a lot of other developers making a "uses" page, so I figured I might as well too. Here's a big list of all my favorite stuff.

This page may contain affiliate links and I may earn a small commission when you click on the links at no additional cost to you.

Development tools

  • Warp Terminal

    My terminal of choice is warp. I'm also using the Z shell and Oh My Zsh.

    For theming, I use the Base16 Materia theme, which is a custom theme from Warp. The font I use is Source Code Pro for Powerline. I also use several custom aliases and functions.

    All my terminal settings are saved in my dotfiles repository. If you want the same environment, you can follow the installation instructions of the repo. I do recommend forking and customizing the installation script to fit your needs, however.

    Warp Terminal
  • PhpStorm

    I absolutely love using PhpStorm for development. Since my primary language is PHP, it makes sense to use this one. I've tried others like Visual Studio Code or Atom, but I like this one the best. Here's a screenshot of my editor setup:

    PhpStorm IDE

    I'm using the Material Theme UI theme with the Atom One Dark color scheme, and I use Fira Code as my editor font.

    Since I mostly work on Laravel projects or packages, I usually enable the Laravel Idea plugin. It's a paid plugin, but it's definitely worth the money since it can provide stuff like auto-completions for route names, request fields and more.

    To make testing more convenient, I also like to use the Pest Plugin. It makes Pest a first class citizen in the IDE, and as another perk, it's completely free.

    One other plugin I've recently found invaluable to my every-day workflow is GitHub Copilot. If I'm ever stuck or don't quite remember how to do something, copilot is usually pretty good at generating code that will at least get me started in the right direction.

  • Laravel Valet

    When using macOS, it's a no-brainer to use Laravel Valet. Valet makes it extremely simple to run my sites locally through Nginx.

  • Ray

    Ray is an excellent debugging tool I like to use from the amazing Spatie.

  • TablePlus

    In the past, I've used DataGrip from JetBrains to manage my databases. Now, I prefer to use TablePlus, as it is much simpler to use.

  • Helo

    For email testing, I love using Helo.

  • Tinkerwell

    Another amazing product from BeyondCode, Tinkerwell makes running arbitrary code either locally or even remotely via ssh simple to do.

  • BabelEdit

    BabelEdit makes managing language files for Laravel projects simple. Instead of jumping between files for language lines, I can do it all in one single window.

  • Transmit

    Sometimes to connect to S3, FTP and SFTP servers, I like to use Transmit.

Hardware

  • 16" MacBook Pro, M1 Pro 32GB RAM (2021)

    I was using a 2019 Intel-based 27" iMac prior to this and the difference is night and day. No matter how many apps I have running or how much load I put it under, the MacBook Pro continues to perform beautifully. It's also extremely quiet; I haven't even heard the fans spin up once since I've had this laptop.

    The MacBook has the M1 Pro processor, 32 GB RAM and a 1 TB SSD.

    macOS Specs
  • OWC 11-Port Thunderbolt Dock

    I looked at a lot of docks, and I've found that the OWC 11-Port Thunderbolt Dock does an amazing job for a docking station. It's not the cheapest dock, but it has everything I was looking for in a docking station.

    I'm able to connect both my monitors, my external drive for backups, ethernet, and more all with a single cable running to the MacBook. As a plus, it also charges the MacBook at the same time.

  • LG 32UN500-W 32-Inch Monitor x2

    At home and at the office, I'm usually docked and use two 32" monitors from LG in addition to the built-in screen from the MacBook. Here's the link to buy them.

  • Monitor Arm

    I prefer using monitor arms over the default stand that most monitors come with, and at the end of 2022 I switched to the HUANUO Dual Monitor Stand. It's a single mount with two monitor arms, and it holds the monitors in place nicely. Each arm is flexible in where I can position them.

    I was previously using two separate monitor arms, but I felt having one single mount was much nicer and provided me with a cleaner setup.

  • Keychron K5 SE Mechanical Keyboard

    I used to love using the magic keyboard from Apple, but once I started using a mechanical keyboard I never looked back. My current keyboard at both home and the office is the Keychron K5 SE Mechanical Keyboard and I'm in love with it. As much as I like the magic keyboard, this one just feels better to type on for long periods of time. I got mine with blue switches, so it's loud and clicky, which is what I was looking for in a keyboard.

  • Logitech MX Master 3s Mouse

    Even when not docked, I still prefer an external mouse for most operations. I really love the Logitech MX Master 3s mouse. For me, it feels great to hold, and it also provides support for some macOS gestures like swiping up for mission control.

  • TwelveSouth Curve Stand

    I've found that the TwelveSouth Curve Stand for MacBook provides a great solution for elevating the MacBook off the desk and I think it looks great.
  • Samsung 1 TB Portable SSD T7 Touch

    For my time machine backups, I use the Portable SSD T7 Touch external ssd from Samsung.

  • Apple AirPods Pro (1st Gen.)

    When I need headphones, I love using my Apple AirPods Pro.

  • Phone

    My current phone is the iPhone 13 Pro Max with 128 GB of storage.

  • Watch

    I never was much of a watch person until I bought my Apple Watch Series 7. Now I feel naked if I leave home without wearing it.

  • YubiKey 5C NFC

    For websites and services that support Webauthn authentication, I use a YubiKey 5C NFC security key. This particular key is nice because it works with both my MacBook and my iPhone without having to use any adapters.

    I highly recommend purchasing at least one of these to use a form of two-factor authentication for websites that support it.

  • Anker Wireless Charging Stand

    The Anker Wireless Charging Stand provides a convenient way to wirelessly charge my phone at the office, and also acts as a nice stand to keep my phone off the desk. It's MagSafe too, which is a plus.

  • Logitech Z407 Bluetooth Speakers

    For the home and the office, I didn't want to go crazy on buying an expensive set of speakers. I went with the Logitech Z407 Bluetooth Speakers for a cheaper solution, but they still sound decent for my needs.

  • LTT Northern Lights Desk Pad

    I really like the design of the LTT Northern Lights Desk Pad and the fact that I can comfortably fit my keyboard, mouse and trackpad on it.

  • Laptop Messenger Bag

    For transporting the MacBook between home and the office, this messenger bag works nicely and has plenty of room for accessories.

Software

  • macOS

    For the longest time I was a Windows user, until roughly late 2019 or so when I decided to give macOS Catalina a try. Now that I've been using it for a few years now, I can positively say I wouldn't ever switch back. For me, I love the development experience I get on a mac and the UI simple to work with. It's also great that it just works seamlessly with my other Apple devices.

    I like to keep my desktop pretty clean, so I hide the dock by default and never save anything to the desktop itself; not even drives are allowed on my desktop. I also only keep the apps are currently running in the dock and hide the indicator for running apps (that dot underneath each app), because if it's in the dock it's running. Here's a screenshot where I've deliberately moved my pointer down so the dock is shown.

    macOS desktop

    In my dotfiles repo you'll find my custom macOS settings.

  • Raycast

    I've never liked Spotlight on macOS, and previously I used Alfred as a replacement. However, now I've discovered Raycast. Raycast is my primary mode of navigating through macOS, as I've bound the keyboard shortcut to cmd + space (overriding Spotlight's keybinding).

    Some of the extensions I've installed for Raycast include:

  • 1Password

    If you're not using a password manager, you're doing it wrong. I prefer to use 1Password. I honestly don't think I could live without 1Password. Having access to all my vaults across all my devices is also a plus.

  • Mackup

    All settings from my apps are backed up to iCloud using Mackup. This is a fantastic piece of software that moves all your preferences to your cloud storage provider of choice and symlinks them.

  • Backblaze

    In addition to time machine backups, I also use Backblaze as an offsite backup.

  • Browser

    My browser of choice is Google Chrome, although I occasionally will use Firefox or Safari too. To block ads on certain sites, I use the AdGuard extension.

  • VPN

    I usually only turn it on when I need to, but on both my MacBook and iPhone, I like to use NordVPN.

  • Spark

    On both my MacBook and iPhone, I prefer to use the Spark Mail App for handling my emails.

  • Spotify

    I'm almost always listening to music either at work or when I'm driving, so Spotify is very nice to have for streaming music.

    When I'm just trying to focus, lately I've been listening to either the Coding Mode playlist or the Beats to think to playlist.

  • Microsoft Office

    Although the subscription is kind of pricy, I still really like the using Microsoft Word & Excel from the Microsoft Office 365 subscription. For me, they are just nicer to use than most alternatives.

  • Bartender

    Bartender is a nice little utility that helps manage how the menu bar is laid out for macOS.

  • DaisyDisk

    DaisyDisk is a nice utility that helps you analyze how your disk space is being used. It's honestly a utility that I should probably use more often.

Miscellaneous

  • Laravel Forge

    Laravel Forge is an amazing service offered by the Laravel team to provision and manage servers. I use it for both my personal and work related servers.

  • DigitalOcean

    My preferred hosting provider for my servers is DigitalOcean.

  • Google Workspace

    I typically will use Google Workspace for both personal and work use to manage mail and calendars for custom domains.

  • Laravel Shift

    I've only used Laravel Shift a few times, but each time I did it saved a lot of time upgrading my Laravel projects.

  • Expose

    Whenever I need to bring up local sites on my phone or share with someone, I use Expose. It also works perfectly for testing Webhooks for third-party apis.

  • GitHub

    GitHub is my preferred development platform. I feel that it provides the best experience for contributors.

  • Flare

    To track exceptions in production, I've found Flare to be very helpful.

In closing

If you have any questions on any of these apps or services, feel free to contact me. If you're interested to see a previous setup I had, see the September 2022 version.