No setup guides. No dotfile rabbit holes. One command installs iTerm2, configures your font, prompt, colors, 50+ aliases, AI tools, and every dev essential — then gets out of your way.
macOS 12+ · Apple Silicon + Intel · Works from any terminal
Setting up a new Mac for development means hours of installing tools, configuring shells, picking fonts, and wiring plugins together. DevTerm does all of that in one command:
- Smart per-window themes — open 4 terminals, always know which is which
- SSH danger mode — window goes red when you're on a remote server
- Oh My Posh prompt — git branch, PHP/Node versions, time — only when relevant
- 50+ aliases — git, Laravel, navigation, system — all pre-configured
- Idempotent installer — run it again anytime, it only installs what's missing
- Zero dependencies — works on a fresh Mac straight out of the box
Open Terminal on your Mac. You can find it in:
Applications > Utilities > Terminal- Or press
Cmd + Space, type Terminal, and hit Enter
bash <(curl -fsSL devterm.skaisser.dev)Copy the line above, paste it into Terminal, and press Enter.
- It will ask for your Mac password (you won't see it as you type — that's normal, just type and press Enter)
- A setup wizard appears — press Enter to install everything (recommended), or type n to pick categories one by one
- Wait for it to finish — first time takes ~15 minutes on a fresh Mac, much faster on re-runs
Everything is configured automatically — font, colors, appearance, and system hotkey.
- Open iTerm2 from Applications (or press Cmd+` from anywhere)
- That's it. Everything works out of the box
The devterm profile (MesloLGS Nerd Font 18, skaisser colors, Minimal appearance, unlimited scrollback) is set as default automatically.
# Clone and run locally (if you already have git)
git clone https://github.com/skaisser/devterm && cd devterm && ./install.sh
# Check what's installed without changing anything
./install.sh --check
# Remove devterm and restore your previous .zshrc
./install.sh --uninstallFirst time on a fresh Mac? Xcode Command Line Tools and Homebrew install automatically. The installer handles everything — no manual steps needed.
Each terminal window gets a unique dark background based on its TTY — no config needed. Open multiple windows and always know which is which at a glance.
![]() |
![]() |
![]() |
Indigo #1a1a38 |
Forest green #1a2a1a |
Deep violet #261426 |
| Window | Color |
|---|---|
| 1 | Deep navy #1e2040 |
| 2 | Forest green #1a2a1a |
| 3 | Burgundy #2a1818 |
| 4 | Indigo #1a1a38 |
| 5 | Teal #0f2828 |
| 6 | Dark plum #1a0e2a |
| 7 | Deep violet #261426 |
| 8 | Emerald #0e2a1a |
ssh user@server # entire window goes red so you never forget you're on productionRestores to its original color automatically when the session ends.
myapp feat/login ~2 +1 ↑1 8.3.0 20.11.0 03:14:22
>>
| Segment | Description |
|---|---|
| Path | Shortened: ~/Sites/myapp → myapp |
| Git | Branch, working (~), staged (+), ahead (↑), behind (↓) |
| PHP | Only shown inside PHP projects |
| Node | Only shown when package.json is present |
| Go / Python | Shown when relevant |
| Time | Right-aligned |
Live context directly in your prompt — model, visual progress bar (green to yellow to red), token count, current project.
The installer shows a category picker — press Enter to install everything (recommended) or type n to choose individually. Core tools always install no matter what.
| Tool | What it does |
|---|---|
| iTerm2 | Modern terminal emulator for macOS — supports smart themes, per-window colors, and SSH danger mode. |
| Nerd Fonts | MesloLGS NF + Fira Code NF — patched fonts with icons required for the prompt and file listings. |
| Oh My Posh + theme | Prompt engine with the custom skaisser theme — shows path, git branch, language versions, and time. |
| zoxide | Smart cd replacement — learns your most-used directories. Type z myapp to jump anywhere. |
| zshrc config | Complete shell configuration with 50+ aliases, functions, smart window colors, and plugin sourcing. Your existing .zshrc is backed up automatically. |
All pre-selected by default — just press Enter to install everything.
| Category | Tools |
|---|---|
| Editor | VS Code (desktop app + code CLI) |
| CLI Tools | eza (modern ls), fzf (fuzzy finder), gh (GitHub CLI), htop, lazygit, wget |
| Zsh Plugins | zsh-completions, zsh-autosuggestions, fast-syntax-highlighting, zsh-history-substring-search |
| Claude Code | AI coding assistant + live statusline |
| PHP / Laravel | Composer, Laravel Herd (serves project.test with HTTPS, includes PHP + MySQL) |
| JavaScript | nvm, Node 22 + 18, Bun, Yarn (skipped if Laravel Herd manages Node) |
| DevOps | rclone (cloud file sync — S3, Google Drive, Backblaze, 70+ providers) |
| Extras | tmux (terminal multiplexer), cmatrix (Matrix rain) |
Navigation
| Command | |
|---|---|
.. ..2 ..3 |
Go up 1–3 levels |
- |
Previous directory |
sites |
Jump to ~/Sites |
z myapp |
Jump anywhere (frecency) |
mkcd mydir |
Create + enter directory |
cl |
Clear |
Git
| Command | |
|---|---|
gst |
git status |
gd / gds |
diff / staged diff |
gco / gcb |
checkout / new branch |
gadd |
Interactive hunk staging |
gp / gpush |
pull / push |
glog |
Pretty graph log |
lazygit |
Full TUI — stage hunks, resolve conflicts |
File Listing
| Command | |
|---|---|
ls |
Icons + git status |
l / ll |
Long list / with permissions |
lt / la |
Tree 2 levels / full tree |
dud / duf |
Disk usage |
PHP / Laravel
| Command | |
|---|---|
art |
php artisan |
pt / ptp |
Pest / Pest parallel |
tc / tcq |
Coverage / coverage parallel |
cda |
composer dump-autoload |
hfix |
Restart Laravel Herd |
Claude Code
| Command | |
|---|---|
claude |
Start Claude Code |
claudd |
Skip permissions prompt |
System
| Command | |
|---|---|
ports |
All listening ports |
psg nginx |
Search running processes |
killp nginx |
Kill by name (with confirm) |
memusage / cpuusage |
Top consumers |
extract file.tar.gz |
Extract any archive |
weather "Paris" |
Current weather |
Fuzzy Finder (fzf)
| Shortcut | |
|---|---|
Ctrl+R |
Search command history |
Ctrl+T |
Fuzzy-search files |
Alt+C |
cd into any directory |
Edit bg_colors in ~/.zshrc:
local bg_colors=(
"1e2040" # window 1 — any hex color
"1a2a1a" # window 2
...
)~/.zshrc.local is created automatically on first install with commented-out examples.
It's sourced at the end of .zshrc and never overwritten by reinstalls.
Use it for: API keys, work aliases, SSH agent, Docker shortcuts, custom PATH entries.
- macOS 12+ (Monterey or later)
- Apple Silicon or Intel
- Internet connection
- Any terminal (Terminal.app works — iTerm2 installs automatically)
Everything else installs automatically. No manual prerequisites.
Contributions are welcome! Feel free to open issues or submit pull requests.
- Fork the repository
- Create your feature branch (
git checkout -b feat/my-feature) - Commit your changes
- Push to the branch (
git push origin feat/my-feature) - Open a Pull Request
Apache 2.0 — use freely, share openly.
Made by Shirleyson Kaisser






