🌞 🌛

Macose - macOS Developer Environment Setup

Like omakase dining where you trust the chef's expertise, Macose curates and installs 70+ development tools and applications for an exceptional macOS developer environment

Quick Start

Run this command to start the automated installer:

curl -fsSL https://peek-tech.github.io/macose/install | bash

The installer downloads the repository to ~/.local/share/macose and executes 70+ installation scripts automatically based on a JSON manifest.

⚠️ Interactive Installation Required

This is NOT a hands-off installation. You must be present during the process for:

System Popups You'll See:

  1. Xcode Command Line Tools: Graphical installer popup (required)
  2. Homebrew Installation: Multiple password prompts in terminal
  3. macOS Security Dialogs: App installation permissions
  4. Application-Specific Setup: VSCode, Neovim, Claude Code configuration prompts

Installation Time: 15-30 minutes depending on your internet connection and choices made during configuration.

🚀 Complete Development Stack

70+ tools across 11 categories

  • 21 modern CLI tools with aliases
  • 4 programming language runtimes
  • 5 web browsers and AI tools
  • Terminal apps and productivity suite

🌈Theming

Unified theming across all applications

  • CLI theme management (macose)
  • Ghostty, VSCode, Git, Neovim themes
  • Font management across apps
  • Dark and light variants

Manifest-Driven

JSON-based execution with dependencies

  • Smart dependency management
  • Logical script grouping
  • Individual script execution
  • Version-controlled execution order

🍎 macOS Optimized

Native macOS integration

  • Homebrew package management
  • macOS-native applications
  • System defaults configuration
  • No cross-platform complexity

What Gets Installed

The installer runs 70+ scripts organized into these categories:

Installation Categories

  1. Core System Setup - System validation, Git configuration, macOS defaults
  2. Command Line Tools (21 tools) - Modern replacements: bat, eza, fd, ripgrep, dust, procs, fzf, starship
  3. Programming Languages - Node.js (NVM + Node 20), Python (pyenv + Poetry), Go, Bun
  4. Developer Fonts - Nerd Fonts collection, Fira Code with ligatures
  5. Web Browsers (5) - Chrome, Firefox, Edge, Arc, Brave
  6. Code Editors - Visual Studio Code with extensions, Neovim with distribution choices
  7. AI Development Tools - Claude desktop + CLI with optional agent/MCP configuration
  8. Terminal Applications (7 TUIs) - htop, tmux (with session management), LazyGit, LazSQL, Glances, ncdu, Oxker
  9. Productivity Apps (6) - Rectangle, Bruno, Slack, Google Drive, Maccy, KeyCastr
  10. Container Platform - Podman with Docker compatibility + Desktop GUI
  11. Theming & Workspace - Catppuccin themes, workspace setup, Ghostty terminal

Interactive Configuration Options

Several scripts will prompt you for choices during installation:

Git Setup & GitHub Integration

Configuration: Name, email, and SSH key setup

GitHub Authentication: SSH key generation and GitHub CLI setup

Git Aliases: Comprehensive set of git shortcuts for faster development

Neovim Editor Configuration

Distribution Choices:

  • LazyVim - Modern config with sensible defaults
  • AstroNvim - Community-driven config with aesthetics
  • NvChad - Fast and minimal config with beautiful UI
  • LunarVim - IDE-like experience with extensive features
  • Custom Config - Manual setup guide following

Git URL Support: Provide custom git repository (must contain `neovim/` directory)

tmux Integration: All configurations automatically enhanced with tmux navigation

Fallback: Defaults to NvChad if invalid choice

macOS System Defaults

Developer-Friendly Settings:

  • Dark mode and appearance
  • Finder enhancements (show extensions, hidden files)
  • Dock auto-hide and behavior
  • Keyboard and input optimizations
  • Screenshot settings
  • Security and firewall configuration
  • Safari developer features

Optional: User can opt-out if they prefer current settings

Starship Cross-Shell Prompt

Installation: Always installs Starship binary via Homebrew

Configuration Choice: Ask user if they want it as their shell prompt

Creative Configuration: Emoji and symbols for git, languages, and system status

Shell Integration: Only adds to shell profile if user confirms

tmux Terminal Multiplexer

Auto-start Option: Automatically start/attach tmux when opening new terminals

Session Management: Save/restore sessions across system restarts

Continuous Saving: Automatic session backup every 15 minutes

Enhanced Commands: Advanced session creation, switching, and management

Navigation Integration: Seamless movement between tmux panes and Neovim splits

Key Bindings: Ctrl+h/j/k/l for unified navigation, Prefix+Ctrl+s/r for save/restore

Claude Code AI Configuration

Basic Setup: Claude Code CLI installation via official installer

Advanced Configuration: Optional custom agents and MCP servers

Git Repository: Provide URL for advanced AI tool configuration

Script Management: Handles install and update scripts from repository

Command Line Integration

The installer adds helpful aliases and integrations:

  • Modern Commands: ll (eza), cat (bat), find (fd), grep (rg), du (dust), ps (procs)
  • Git Shortcuts: Common git aliases for faster development
  • Development Shortcuts: lg (lazygit), sql (lazysql), top (glances)
  • Smart Navigation: z command for intelligent directory jumping
  • Enhanced Search: fzf integration for command history and file finding
  • Unified Navigation: Ctrl+h/j/k/l works seamlessly between tmux panes and Neovim splits

Theme Management CLI

Includes the macose CLI tool for centralized theme and font management:

# Theme management macose theme list # Show available themes macose theme set <theme> # Switch themes across all apps macose theme current # Show current theme # Font management macose font list # Open Font Book for browsing macose font set "Font" # Set font across supported apps

Manual Script Execution

All scripts can be run individually for customization:

cd ~/.local/share/macose/scripts bash apps/neovim.sh # Install and configure Neovim bash tools/starship.sh # Install Starship prompt bash languages/nvm.sh # Install Node.js via NVM

🙌 Acknowledgments

This project was inspired by: