https://github.com/bhavikbhavsar/macos-dev-setup
โก Automated macOS setup for developers - 50+ tools, Python env, Zsh config
https://github.com/bhavikbhavsar/macos-dev-setup
automation command-line developer-tools dotfiles homebrew macos productivity python setup-script shell zsh
Last synced: about 1 month ago
JSON representation
โก Automated macOS setup for developers - 50+ tools, Python env, Zsh config
- Host: GitHub
- URL: https://github.com/bhavikbhavsar/macos-dev-setup
- Owner: bhavikbhavsar
- License: mit
- Created: 2025-09-29T11:12:29.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-09-29T12:49:36.000Z (8 months ago)
- Last Synced: 2025-09-29T14:41:33.746Z (8 months ago)
- Topics: automation, command-line, developer-tools, dotfiles, homebrew, macos, productivity, python, setup-script, shell, zsh
- Language: Shell
- Homepage:
- Size: 26.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐ macOS Developer Setup Automation
[](https://github.com/bhavikbhavsar/macos-dev-setup)
[](https://github.com/bhavikbhavsar/macos-dev-setup/fork)
[](https://github.com/bhavikbhavsar/macos-dev-setup/issues)
[](https://opensource.org/licenses/MIT)
> **From 6 hours to 12 minutes**: Automate your entire macOS developer environment setup with a single command.
**โญ If this saves you time, please consider starring the repo! It helps others discover it too.**
---
## ๐ Why This Exists
Setting up a new Mac for development is painful:
- โ Hours of manual downloads and installations
- โ Forgetting essential tools and configurations
- โ Inconsistent setups across team members
- โ No easy way to reproduce your perfect environment
**This script changes everything.** One command, 12 minutes, perfect developer setup.
## โจ What You Get
### ๐ ๏ธ **50+ Essential Developer Tools**
Automatically installs via Homebrew:
| Category | Tools |
|----------|-------|
| **CLI Essentials** | `git`, `gh`, `tmux`, `fzf`, `ripgrep`, `fd`, `bat`, `jq`, `httpie`, `tree`, `eza` |
| **Development** | `node`, `python`, `pyenv`, `pipx`, `poetry`, `uv`, `go`, `rust`, `docker` |
| **Applications** | VS Code, iTerm2, Sublime Text, CleanShot, Notion, Raycast, Bitwarden, Chrome, Slack, Discord, Figma, Zoom, OBS |
| **Fonts** | Hack Nerd Font, Meslo LG Nerd Font |
### ๐ **Python Development Environment**
- Python 3.12.5 via pyenv
- Poetry for dependency management
- Pre-commit hooks for code quality
- Virtual environment best practices
### ๐ **Enhanced Terminal Experience**
- **Starship prompt** with Git integration
- **Auto-suggestions** and syntax highlighting
- **50+ productivity aliases** and functions
- Oh My Zsh with curated plugins
### โ๏ธ **macOS Optimizations**
- **Finder**: Show hidden files, path bar, status bar
- **Trackpad**: Tap to click, three-finger drag
- **Keyboard**: Fast repeat rates, full keyboard access
- **Screenshots**: JPG format, organized location
- **Dock**: Auto-hide, faster animations
- **Developer-friendly**: Disable auto-correct, smart quotes
## ๐บ Demo
```bash
# Before: 6+ hours of manual setup ๐ค
# After: Single command automation โก
./setup.sh
# โณ 12 minutes later: Perfect developer environment โจ
```
*[Demo GIF/Video coming soon - star the repo to be notified!]*
## ๐ Quick Start
```bash
# Clone the repository
git clone https://github.com/bhavikbhavsar/macos-dev-setup.git
cd macos-dev-setup
# ๐ฏ IMPORTANT: Customize Git settings (30 seconds)
# Edit these lines in setup.sh:
# DEFAULT_GIT_NAME="Your Name"
# DEFAULT_GIT_EMAIL="your.email@example.com"
# Make executable and run
chmod +x setup.sh
./setup.sh
# Grab a coffee โ - you're done in ~12 minutes!
```
## ๐ Need to Revert?
No problem! Complete restoration script included:
```bash
chmod +x restore.sh
./restore.sh
# Safely removes everything and restores your original setup
```
## ๐ What's Inside
```
mac-setup/
โโโ ๐ฆ Brewfile # 50+ packages and applications
โโโ โ๏ธ macos-defaults.sh # System preferences optimization
โโโ ๐ setup.sh # Main automation script (idempotent)
โโโ ๐ restore.sh # Complete restoration script
โโโ ๐ .zshrc # Enhanced shell configuration
โโโ ๐ README.md # You are here!
```
## โก Key Features
- **๐ Idempotent**: Run multiple times safely - won't break existing setups
- **๐ก๏ธ Non-destructive**: Backs up existing configs automatically
- **๐ฏ Customizable**: Easy to modify for your specific needs
- **โก Fast**: Complete setup in ~12 minutes vs 6+ hours manually
- **๐งน Reversible**: Full restore script to undo everything
- **๐ค Team-friendly**: Consistent environments across your team
## ๐จ Customization
### ๐ง Add Your Own Tools
Edit `Brewfile` to include your favorite tools:
```ruby
# Add CLI tools
brew "your-favorite-tool"
# Add applications
cask "your-favorite-app"
```
### ๐ฏ Modify System Preferences
Edit `macos-defaults.sh` to customize system behavior:
```bash
# Example: Change dock size
defaults write com.apple.dock tilesize -int 48
```
### ๐ Enhance Shell Experience
Customize `.zshrc` with your aliases and functions:
```bash
# Your custom aliases
alias myproject="cd ~/Developer/my-awesome-project"
```
## ๐ Stats
- โญ **Stars**: Growing daily!
- ๐ด **Forks**: Customized by developers worldwide
- ๐ฌ **Community**: Active discussions in Issues
- โฑ๏ธ **Time Saved**: 5.75+ hours per developer
## ๐ค Contributing
We love contributions! This project thrives on community input.
### ๐ฏ How to Help
- **โญ Star the repo** - Helps others discover it
- **๐ด Fork and customize** - Share your modifications
- **๐ Report issues** - Found a bug? Let us know!
- **๐ก Suggest improvements** - New tools, better configs
- **๐ Improve docs** - Better explanations, more examples
### ๐ Good First Issues
- [ ] Add more package suggestions
- [ ] Create setup variations (minimal, full, language-specific)
- [ ] Improve error handling and logging
- [ ] Add pre-commit hooks to the repository
- [ ] Create setup for other platforms (Linux, Windows)
## ๐ฌ Community
- **๐ญ Discussions**: Share your customizations in [Issues](https://github.com/bhavikbhavsar/macos-dev-setup/issues)
- **๐ Bug Reports**: Found something broken? Please report it!
- **๐ก Feature Requests**: Got ideas? We'd love to hear them!
- **๐ Show & Tell**: Share your customized setup
## ๐ Inspiration & Similar Projects
*Standing on the shoulders of giants:*
- [mathiasbynens/dotfiles](https://github.com/mathiasbynens/dotfiles) - macOS defaults inspiration
- [Homebrew Bundle](https://github.com/Homebrew/homebrew-bundle) - Package management approach
- [Oh My Zsh](https://github.com/ohmyzsh/ohmyzsh) - Shell enhancement framework
## ๐จ System Requirements
- **macOS**: Tested on recent versions (10.15+)
- **Internet**: Required for package downloads
- **Admin Access**: Needed for system modifications
- **Time**: ~12 minutes for complete setup
## ๐ Post-Setup Checklist
- [ ] Restart terminal: `source ~/.zshrc`
- [ ] Add SSH key to GitHub (if generated)
- [ ] Verify Python: `python --version` and `poetry --version`
- [ ] Test new aliases: `ll`, `gs`, `gc`
- [ ] Restart Mac for all system preferences
- [ ] **โญ Star this repo if it helped you!**
## ๐ฏ What's Next?
**Roadmap** (vote on priorities in Issues!):
- [ ] **GUI setup tool** for non-technical users
- [ ] **Linux/Windows** support
## ๐ License
MIT License - Use it, fork it, love it! See [LICENSE](LICENSE) file for details.
---
## ๐ Show Your Support
**If this project saved you time:**
- โญ **Star the repository** (it really helps!)
- ๐ด **Fork it** and customize for your team
- ๐ข **Share it** with fellow developers
- โ **Buy me a coffee** (optional link)
- ๐ฌ **Leave feedback** in the Issues
**Built with โค๏ธ by developers, for developers.**
*Last updated: 29 September 2025 - Always improving! ๐*
---
**โญ Don't forget to star the repo if this helped you! โญ**
Made something cool with this setup? [Share it with us!](https://github.com/bhavikbhavsar/macos-dev-setup/issues/new?template=show-and-tell.md)