https://github.com/mattdowney/dotfiles
A fully automated dotfiles setup for macOS. Installs essential tools (Homebrew, Node.js, PHP, Composer, Git, Zsh, and more) in minutes with a single command.
https://github.com/mattdowney/dotfiles
composer dev-environment dotfiles homebrew macos nodejs php setup-script volta zsh
Last synced: about 2 months ago
JSON representation
A fully automated dotfiles setup for macOS. Installs essential tools (Homebrew, Node.js, PHP, Composer, Git, Zsh, and more) in minutes with a single command.
- Host: GitHub
- URL: https://github.com/mattdowney/dotfiles
- Owner: mattdowney
- Created: 2025-03-18T21:37:28.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-03-18T23:20:07.000Z (11 months ago)
- Last Synced: 2025-03-19T00:26:03.964Z (11 months ago)
- Topics: composer, dev-environment, dotfiles, homebrew, macos, nodejs, php, setup-script, volta, zsh
- Language: Shell
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π Dotfiles & Dev Environment Setup
This repository contains my **dotfiles** and a fully automated **install script** to set up a macOS development environment in minutes.
## π **Installation Instructions**
### **1β£ Clone the Dotfiles Repo**
```sh
git clone git@github.com:mattdowney/dotfiles.git ~/dotfiles
```
### **2β£ Run the Install Script**
```sh
bash ~/dotfiles/install.sh
```
### **3β£ Restart Your Terminal**
```sh
exec zsh
```
Or manually close and reopen your terminal.
---
## β‘ **What This Installs**
### **System Tools**
- πΊ **Homebrew** (macOS package manager)
- π **CLI Tools**: `git`, `gh` (GitHub CLI), `fzf`, `ripgrep`, `wget`, `jq`
### **Development**
- β‘ **Volta** (for Node.js version management)
- π’ **Node.js** (via Volta) + Global npm packages (`pnpm`, `yarn`, `eslint`, `typescript`)
- π **PHP** (for WordPress & Shopify work)
- π **Composer** (PHP package manager)
### **Shell & Configs**
- π¨ **Cursor settings** (symlinked for automatic syncing)
- π **Git config** (`.gitconfig`)
- π **Zsh config** (`.zshrc`)
- β‘ **Oh My Zsh & Plugins**
- `zsh-autosuggestions` (auto-suggest commands)
- `zsh-syntax-highlighting` (colorized command syntax)
---
## π **Updating Your Dotfiles**
Whenever you change settings, run:
```sh
cd ~/dotfiles
git add .
git commit -m "Update dotfiles"
git push
```
---
## π **Customizing**
### **Adding More Tools**
- Modify `install.sh` to install additional CLI tools or frameworks (e.g., VS Code, Docker).
- Add custom **aliases, functions, and environment variables** to `~/.zshrc`.
### **Changing Cursor Settings**
Modify `settings.json` and run:
```sh
cp ~/Library/Application\ Support/Cursor/User/settings.json ~/dotfiles/
git add settings.json
git commit -m "Update Cursor settings"
git push
```
---
## π **Troubleshooting**
### **1β£ "Permission denied" when running the script**
Fix it by making the script executable:
```sh
chmod +x ~/dotfiles/install.sh
```
### **2β£ Homebrew is asking for a password**
Thatβs normalβHomebrew requires admin permissions for system-wide installs.
### **3β£ Symlinked files arenβt updating**
Run:
```sh
ln -sf ~/dotfiles/.zshrc ~/.zshrc
ln -sf ~/dotfiles/.gitconfig ~/.gitconfig
ln -sf ~/dotfiles/settings.json ~/Library/Application\ Support/Cursor/User/settings.json
```
This will **re-link everything manually**.
---
## π **Next Steps**
- **Keep your dotfiles updated** by committing changes regularly
- **Share your setup** with friends who want a similar Mac dev environment
- **Fork & modify** if you want to create a custom version
π **This is now a plug-and-play Mac setup! Enjoy.** π