An open API service indexing awesome lists of open source software.

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

Awesome Lists containing this project

README

          

# ๐ŸŽ macOS Developer Setup Automation

[![GitHub stars](https://img.shields.io/github/stars/bhavikbhavsar/macos-dev-setup.svg?style=social&label=Star)](https://github.com/bhavikbhavsar/macos-dev-setup)
[![GitHub forks](https://img.shields.io/github/forks/bhavikbhavsar/macos-dev-setup.svg?style=social&label=Fork)](https://github.com/bhavikbhavsar/macos-dev-setup/fork)
[![GitHub issues](https://img.shields.io/github/issues/bhavikbhavsar/macos-dev-setup.svg)](https://github.com/bhavikbhavsar/macos-dev-setup/issues)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](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)