Setup Guide
This guide walks through the setup process for your local development environment.
Initial Setup
Git
Git is essential for version control. Ensure you have the latest version by downloading it from here.
Verify the installation with:
git --versionConfiguring Git
Set up your Git identity:
git config --global user.name "<your_username>"git config --global user.email "username@email.com"Validate your settings:
git config user.namegit config user.emailSSH Key for GitHub
Generate a new SSH key
ssh-keygen -t rsaAdd the SSH key to your clipboard and add it in your GitHub account:
pbcopy < ~/.ssh/id_rsa.pubHomebrew
Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple’s macOS.
To install Homebrew run the following command in your terminal:
Homebrew installation:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Homebrew installation behind proxy:
/bin/bash -c "$(curl -vvv -x http://<USERNAME>:<PASSWORD>@proxy.com:<PORT> -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Verify the installation:
brew --versionYou should see the following output:
Homebrew x.x.xUsing Brewfile
We can bulk install all the packages and apps that we need for our development environment using a brewfile.
Current Brewfile:
# Brewfile
# 'brew tap'tap "homebrew/cask"
# 'brew install'brew "starship"brew "nvm"brew "uv"brew "go"brew "pyenv"brew "httpie"brew "lazydocker"brew "lazygit"brew "zsh-autosuggestions"brew "bat"
# 'brew install --cask'cask "jetbrains-toolbox"cask "cursor"cask "kitty"cask "alfred"cask "clipy"cask "firefox@developer-edition"cask "claude"cask "docker"cask "mullvadvpn"cask "spotify"cask "zed"cask "ghostty"cask "slack"cask "whatsapp"cask "zed"Run the following command to install all the packages in the Brewfile:
brew bundle --file=~/BrewfileAlternatively, you can use the following command to install all the packages in the Brewfile if you have a Brewfile in the current directory:
brew bundleIDE
Intellij IDEA Ultimate is my preferred IDE for development.
VSCode is my preferred code editor for quick edits (For now…Quickly being replaced by Zed).
Installation using Homebrew:
brew install --cask intellij-ideabrew install --cask visual-studio-codeAlternatively, you can use their respecive download links found here for Intellij and here for VSCode.
MacOS
Xcode Command Line Tools
Xcode Command Line Tools includes a GCC compiler, linker, and other utilities. Many useful tools are included in the Xcode Command Line Tools, such as Git, which are not included in the macOS by default.
To install the Xcode Command Line Tools, run the following command in your terminal:
xcode-select --installverify the installation:
xcode-select -pYou should see the following output:
/Library/Developer/CommandLineToolsKitty
Kitty is a fast, featureful, GPU based terminal emulator. It offloads rendering to the GPU and uses OpenGL for fast, cross-platform performance on modern hardware.
To install Kitty run the following command in your terminal:
brew install --cask kittyPreferred Theme
Rasmus theme for Kitty.
Go to ~/.config/kitty and create a file named current-theme.conf and paste the following content in it:
# Rasmus colorscheme for kittycursor #b6b6b5foreground #d1d1d1background #1a1a19selection_foreground #d1d1d1selection_background #2a2a29color0 #333332color8 #4c4c4bcolor1 #ff968ccolor9 #ffafa5color2 #61957fcolor10 #7aae98color3 #ffc591color11 #ffdeaacolor4 #8db4d4color12 #a6cdedcolor5 #de9bc8color13 #f7b4e1color6 #7bb099color14 #94c9b2color7 #d1d1d1color15 #eaeaea
active_tab_foreground #d1d1d1active_tab_background #323231inactive_tab_foreground #b6b6b5inactive_tab_background #222221
active_border_color #3a3a39inactive_border_color #323231inactive_text_alpha 0.8Auto-Suggestions
For auto-suggestions in the terminal my preferred choice is zsh-autosuggestions.
To install zsh-autosuggestions run the following command in your terminal:
brew install zsh-autosuggestionsTo activate the autosuggestions, add the following at the end of your .zshrc:
source $HOMEBREW_PREFIX/share/zsh-autosuggestions/zsh-autosuggestions.zshYou will also need to restart your terminal for this change to take effect.
VIM
Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems. I prefer to keep things simple and use the default vim that comes with MacOS with some minor tweaks.
Add the following to your .vimrc file:
syntax on
set number
set relativenumber
set autoindent
set smartindent
set smarttab
set expandtab
set hlsearch
nnoremap <SPACE> <Nop>
let mapleader=" "
set encoding=UTF-8
set wrap
set nocompatible
set laststatus=2
" PLUGINScall plug#begin() Plug 'preservim/nerdtree' Plug 'https://github.com/dracula/vim.git' Plug 'ryanoasis/vim-devicons' Plug 'ayu-theme/ayu-vim'call plug#end()
set termguicolorslet ayucolor="dark"colorscheme ayu
nnoremap <leader>n :NERDTreeFocus<CR>nnoremap <C-n> :NERDTree<CR>nnoremap <C-t> :NERDTreeToggle<CR>nnoremap <C-f> :NERDTreeFind<CR>Run :PlugInstall to install the plugins.
Alfred
Alfred is a powerful productivity tool for macOS, designed to boost your efficiency with hotkeys, keywords, and file actions. With its unique workflows, Alfred offers a seamless way to search for files online and on your Mac, browse your file system, and much more.
To install Alfred run the following command in your terminal (provided that homebrew is installed):
brew install --cask alfredFollow the prompts to provided in the alfred installer to complete the installation.
Clipy
Clipy is a clipboard extension app for macOS. It extends the native clipboard functionality by remembering every item you copy, allowing you to quickly access any of those items at a later time. With its snippets feature, you can also save frequently used phrases and access them with ease.
To install Clipy run the following command in your terminal (provided that homebrew is installed):
brew install --cask clipyArc
Arc is a web browser that stands out for its integration of web browsing with built-in applications and features, enhancing user interaction with the internet.
To install Arc using homebrew
brew install --cask arcStarship
Starship is a Rust based customizable cross-shell prompt. Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
To install starship using homebrew
brew install starshipAfter starship is installed, add the following to your .zshrc file:
eval "$(starship init zsh)"To install the necessary nerd fonts using homebrew run the following command in your terminal:
brew search '/font-.*-nerd-font/' | awk '{ print $1 }' | xargs brew install --caskAfter installing the necessary fonts set them on your preferred terminal emulator.
Preferred Starship Config
In ~/.config/starship.toml add:
"$schema" = 'https://starship.rs/config-schema.json'
add_newline = true
[character]success_symbol = '[➜](bold green)'error_symbol = '[✗](bold red) '
[package]disabled = true
[aws]format = 'on [$symbol($profile )(\($region\) )]($style)'style = 'bold blue'symbol = '🅰 'Zed
Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter. Zed combines the power of an IDE with the responsiveness of a lightweight editor.
To install Zed using homebrew
brew install zedPreferred Zed Config
In ~/.config/zed/settings.json add:
{ "theme": "Ayu Dark", "ui_font_size": 14, "buffer_font_size": 14, "format_on_save": "language_server", "autosave": "on_focus_change"}Work In Progress…
Windows
Scoop
Scoop is a command-line installer for Windows inspired by Homebrew for macOS. It focuses on simplifying the installation of software and development tools without the need for elevated permissions.
To install Scoop, you first need to ensure that you have PowerShell 3 (or later) and .NET Framework 4.5 (or later) installed on your Windows machine.
To install Scoop, run the following command in your PowerShell:
Install without proxy:
Set-ExecutionPolicy RemoteSigned -scope CurrentUser; iwr -useb get.scoop.sh | iexInstall behind proxy:
$proxy = "http://<USERNAME>:<PASSWORD>@proxy.com:<PORT>"Set-ExecutionPolicy RemoteSigned -scope CurrentUser; iwr -useb get.scoop.sh -Proxy $proxy | iexVerify the installation:
scoop --versionYou should see the following output:
Scoop x.x.xHyper
Hyper is a sleek and modern terminal built on web technologies. It’s fully extensible and customizable, making it a great choice for developers looking for an advanced terminal experience on Windows. You can learn more about Hyper by visiting its homepage.
Installation steps
-
Ensure Scoop is Installed
-
Install Hyper
With Scoop installed, you can now install Hyper with the following command:
Terminal window scoop install hyper -
Launch Hyper
After installation, you can launch Hyper by typing
hyperinto your command prompt or searching for “Hyper” in your start menu. -
Optional Customizations
Hyper allows for a wide range of customizations, from themes to plugins. You can modify the
.hyper.jsconfiguration file in your home directory to tweak the settings to your liking.