DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Cover image for My Minimal Web Development Setup
Saurabh Sharma
Saurabh Sharma

Posted on • Updated on • Originally published at itsjzt.com

My Minimal Web Development Setup

This is the setup I use daily to get things done as a full-stack web developer. I love knowing about tools other people are using and here I'm sharing my exact set up so it can give inspiration to others. I will try to keep this guide updated.

Laptop and OS

My main computer at the time of writing is an early 2020 Macbook pro (not M1) I'm really happy with the laptop but chances are I would upgrade to M2 MacBook air when it comes out 🀞. I use mac os but I don't think there is anything that makes it any better than windows 11 or Linux in general, I used to use windows in the past and the only reason I'm using macOS is that I can test and debug websites on safari if I ever need to.

mac os

Apps

Spotlight

I use macOS's Spotlight to open apps, find files, and just get around the OS. I rarely ever use Launchpad to open apps.

Spotlight image

Firefox

I use Firefox as my default browser. I find chrome's design a bit too rounded and I don't use safari because I don't think it's good for me to get locked in apple's ecosystem.

I use very few extensions. uBlockOirgin, Bitwarden, React Devtools and Grammarly are the only extension I have installed.

firefox-image.png

Visual Studio Code

I have tried many editors in the past, I have tried Sublime Text, VIM, Webstorm, and everything in-between but VS Code feels the one with the best defaults and most active development. I don't use (n)vim because of its configuration-heavy nature. I have written another post about my exact setup in visual studio code and with all the plugins I use. bottom line I'm pretty happy with vs code and I don't think I will be changing editors anytime soon.

vs-code-image.png

Bitwarden

Bitwarden is my password manager of choice. I'm still on the free plan and I don't have any complaints. I don't like the UI that much but on the functionality side of things it's good enough, It gives everything you might need from your password managers even in the free plan.

Obsidian

I use Obsidian for taking notes and writing posts. I have tried Notion, and Evernote in the past. Evernote feels kind of bloated and tailored for more advanced use cases and Notion is more tailored for teams and people who need very customized workflows, I just need a Markdown-based editor and cloud syncing. I have also tried Simplenote it was really good but there were two problems (1) it didn't support uploading images (2) It doesn't support folders so everything was flat and very hard to find.

obsidian-image.png

Insomnia

Insomnia is a testing tool for graphql and REST APIs. I use it for testing our backend and sometimes external 3rd party APIs

Xcode

I recently tried swift UI and it looks super cool. The UI layer is inspired by React and its cross-platform atleast in the Apple ecosystem.

Postbird

Postbird is a GUI for Postgres database nothing special I use it for creating new users/databases and sometimes connecting to a remote database.

Slack

Our company uses slack for communication not much to talk about it, I don't use any custom themes or anything just have a few custom icons installed.

slack-custom-emoji.png

Homebrew

Every other operating system comes with a preinstalled package manager (even windows 11 has winget) but you have to use this third-party service on macOS. It works well but I wish mac had something native for this.

NVM

Node Version Manager or NVM helps you to use different versions of Node for different projects I don't work on projects that require a very specific version of node but it makes updating node easier so I have it installed.

Default Mac Terminal

I use the default macOS terminal. I never found a use case for iTerm so I stick to the native terminal. I have increased the font size to 14 and that's all the customization I have done to my terminal.

terminal-image.png

Excalidraw and Figma

I use this to make flow charts and rough design sketches. Excalidraw is good for doing whiteboard-like problem-solving.

And sometimes when I need to create a UI mockup, I use Figma for that.

excildraw-image.png

Conclusion

I have tried to keep my setup minimal I feel once you start customizing things you just spend a lot of time on a never-ending quest for the perfect setup and end up spending more time in setup than what it would save you. You should watch this video by mpj for some context.

Originally posted on itsjzt.com

Top comments (25)

Collapse
chadalen profile image
Chad Adams • Edited on

Similar to mine though I use...

  • Joplin instead of Obsidian for dev notes
  • Beekeeper Studio instead of Postbird for Database GUI
  • Hoppscotch instead of Insomnia REST API
  • Penpot instead of Figma (I still use Figma but been playing around with PenPot because it's an open source Figma alternative)
  • Warp for the terminal (Because it has good intellisense and as a web developer I like stuff to look good. The default terminal is ugly)
Collapse
itsjzt profile image
Saurabh Sharma Author

Nice setup

Collapse
rad34sky profile image
Alex Radetsky

I use iterm2 instead of default terminal because of few things - nice full screen shortcut and copy to the clipboard while selecting the text without additional command.

Fish as default shell.

DBeaver for RDBMS.

Do not forget about docker, Firefox for Developers, etc.

Collapse
itsjzt profile image
Saurabh Sharma Author

I tried iterm but the features provided by default terminal were enough for me.

Collapse
zanothis profile image
zanothis

For windows, PowerToys Run looks comparable to Spotlight.

Collapse
wilmela profile image
Wilmela

Great!, I think I will borrow one or two things here.

Collapse
itsjzt profile image
Saurabh Sharma Author

Thank Wilmela, Glad you found it helpful

Collapse
lockykeaney profile image
Locky Keaney

I've got an M1 Macbook Air for personal use, but it's much better than my 16" Macbook Pro (2019) so I've found myself using it more lately. I can happily recommend.

Collapse
itsjzt profile image
Saurabh Sharma Author

Yeah M1 macbook are very capable machines

Collapse
wjplatformer profile image
Wj

nice!

Collapse
itsjzt profile image
Saurabh Sharma Author

Thanks WJ

Collapse
andrewbaisden profile image
Andrew Baisden

Great setup I can see that we use similar tools.

Collapse
itsjzt profile image
Saurabh Sharma Author

Thanks Andrew

Collapse
gcgbarbosa profile image
George C. G. Barbosa

Nice setup!

I used to have a bunch of softwares too...

I do everything and more with doom emacs now :)

Collapse
itsjzt profile image
Saurabh Sharma Author

Thanks George.

Emacs FTW

Collapse
crisoncode profile image
Cristian Estarlich

Nice setup! I'm a bit curious about obsidian, for me notion works like a charm but I'm seeing a lot of devs working with this app, will take a look for sure!

Collapse
itsjzt profile image
Saurabh Sharma Author

I like obsidian because of its offline capabilities but for the most part obsidian and notion are alike

Collapse
wjk22 profile image
Wojtek Kalka

Pretty bad setup, from the os to everything else, these days wsl and real linux is the way to go .. and oh-my-zsh and other stuff .. nvin plus vscode, only bitwarden is good here ..

Collapse
moopet profile image
Ben Sinclair • Edited on

It's ok to have an opinion, but there's nothing "bad" about OP's configuration.
"wsl and real linux" is a bit of an odd phrase, do you mean "wsl OR real linux", or are you advocating having two systems instead of one? I run WSL and separate MacOS and Linux systems myself, but I wouldn't pitch it in a post about a "minimal web development setup".

My differing opinion is that "oh-my-zsh" is pointless bloatware because it doesn't really offer much you don't get out the box with zsh (or bash for that matter).

Collapse
wjk22 profile image
Wojtek Kalka

with wsl2 you run a native linux distro of your choice, macport/homebrew is crap compared to it, and learn nvim, osx is just outdated and slows down development only useful if you need it for ios stuff, also you need virtualization as developer else you have no snapshots etc pp, and oh-my-zsh helps a lot with git ..

Collapse
dikamilo profile image
dikamilo

Can't agree. Worked over year with WSL1 and WSL2 and few years before on bare Linux distros. Switched to Mac OS fully last year and for me, it is the best setup (zsh, oh-my-zsh, iterm 2, IntelliJ IDE).

WSL2 is still lacking, memory issues (including huge leaks), sync issues, slow I/O, almost every time require running everything inside WSL for "smooth" performance using external xserver software. Not worth it in my opinion.

Collapse
zanothis profile image
zanothis

For the slow I/O with WSL2, disk access to files on the Linux file system is fine, it's when you're trying to access the windows filesystem that causes problems. I'd expect it to get better over time, but I don't use it much myself.

Thread Thread
dikamilo profile image
dikamilo

No is not. If you have for example IDE on Windows, and code/git on WSL2 then it will be slow and have some inconsistency between files - I had a lot of problems with that. It's for sure faster than on WSL1, but still not here.

Collapse
wjk22 profile image
Wojtek Kalka

YOu do not need an xserver any more on wsl they run native on win11

Collapse
itsjzt profile image
Saurabh Sharma Author • Edited on

I have tried WSL 2 and it works fine, I just like having safari to test things whenever needed.

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.