Setup your machine
Code Editor
Choose your code editor
Time to configure it
-
If you chose Cursor/VS Code
-
Create
codecommand -
Open the Command Palette
(⇧⌘P)and type shell command to find the Shell Command: Install 'code' command in PATH command. Restart the terminal for the new$PATHvalue to take effect. You'll be able to typecode .in any folder to start editing files in that folder. -
Configure user settings
(⇧⌘P)and type user settings and select Preferences: Open User Settings Depending on your VSCode version you will see a JSON view of the settings by default or not. If it doesn't show at first you can click a{}button on the top right that will show you the settings JSON view.{ "explorer.confirmDelete": false, "editor.scrollBeyondLastLine": false, "editor.wordWrap": "on", "files.trimTrailingWhitespace": true, "editor.tabSize": 2, "markdown.preview.scrollPreviewWithEditor": false, "[python]": { "editor.tabSize": 4, }, "files.insertFinalNewline": true, "markdown.preview.scrollEditorWithPreview": false, "html.suggest.html5": false, "editor.quickSuggestions": { "other": true, "comments": false, "strings": true }, "window.zoomLevel": 0, "python.venvPath": "~/.virtualenvs", } `
-
-
If you chose Sublime
-
Create
sublcommandsudo mkdir -p /usr/local/bin/ && sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl -
Install package manager as shown here
-
Configure user settings (
Sublime Text -> Preferences -> Settings){ "ensure_newline_at_eof_on_save": true, "font_size": 14, "show_encoding": true, "tab_size": 2, "translate_tabs_to_spaces": true, "trim_trailing_white_space_on_save": true }
-
General MAC OS config
-
Enable "Show Path" bar in Finder
defaults write com.apple.finder ShowPathbar -bool true -
Enable "Show Status" bar in Finder
defaults write com.apple.finder ShowStatusBar -bool true
Xcode
Xcode is an IDE for macOS developed by Apple for developing software for macOS, iOS, iPadOS, watchOS, and tvOS.
- Install Xcode from the App Store
- Open Xcode and accept the licence
- Install command line tools with this command:
xcode-select --install
Homebrew
Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple's macOS operating system and Linux.
Installation
-
To install it, run in Terminal the following command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" -
Run
brew doctorand update homebrew withbrew update
Git
Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files.
Installation
Xcode developer tools already installs GIT for us.
Configuration
-
If migrating from another computer, import previous configuration following this guide
-
If no configuration was created, execute these commands in your terminal:
ssh-keygen -t rsa -C "YOUR EMAIL" git config --global user.email "YOUR EMAIL" git config --global user.name "YOUR NAME" git config --global color.ui true
Useful tips
GitHub
GitHub is a web-based collaborative software platform for software development version control using Git. It provides access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project.
If you are new to GitHub, create an account.
When you finished, give your account username to somebody in the team
wget
GNU Wget is a computer program that retrieves content from web servers. It supports downloading via HTTP, HTTPS, and FTP.
Installation
Run the following command:
brew install wget
Postgres / PostgreSQL
Postgres is a free and open-source relational database management system emphasizing extensibility and SQL compliance.
Installation
You can install it from Postgres app page
Configuration
Configure PATHs
-
Open
zshrc:nano ~/.zshrc -
Paste the following:
export PATH=$PATH:/usr/local/bin export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin -
Save those changes and exit.
-
Apply those changes:
source ~/.zshrc -
Finally, type
psqlin your terminal to open Postgres console and run:CREATE USER postgres SUPERUSER;
Ruby (Rails team only)
Ruby is an interpreted, high-level, general-purpose programming language.
We use RVM (Ruby Version Manager) to easily install, manage, and work with multiple Ruby environments from interpreters to sets of gems.
Installation
Run the following command:
curl -sSL https://get.rvm.io | bash -s stable --rails
source ~/.rvm/scripts/rvm
Once RVM is installed, install latest Ruby version:
rvm use ruby --install --default
Configuration
Configure no documentation for gems (speeds up gem installation process):
echo 'gem: --no-document' >> ~/.gemrc
Install rails and bundler
gem install rails bundler
Node.js (Node team only)
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a web browser.
nvm (node version manager)
We use nvm to manage different Node.js versions between projects. Run the following command:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
Check that everything went well running the following command:
command -v nvm
pnpm / bun
pnpm and bun are package managers for the JavaScript programming language. Install either of those.
Python (AI team only)
Python is an interpreted, high-level, general-purpose programming language. Python 3 is the latest version of this language.
Installation
We use uv to manage python versions and dependencies. Install it:
curl -LsSf https://astral.sh/uv/install.sh | sh
echo 'eval "$(uv generate-shell-completion zsh)"' >> ~/.zshrc
echo 'eval "$(uvx --generate-shell-completion zsh)"' >> ~/.zshrc
Configuration
-
Setup Python's environment management
Install a specific Python version
uv python install 3.12List installed versions
uv python list -
To create a Python3 virtual environment
It's usual to have different Python environments for each project. This keeps the project dependencies independent from each other.
Create an environment:
uv venv .venvActivate it:
source .venv/bin/activate -
To exit the virtualenv
deactivate
Troubleshooting
If you experienced errors while bundling, run this commands in Terminal:
gem uninstall libv8
brew install v8
gem install therubyracer
gem install libv8 -v '3.16.14.3' -- --with-system-v8
Extra (optional)
Docker
Docker is a set of platform as a service products that uses OS-level virtualization to deliver software in packages called containers.
Installation
You can install Docker Desktop app from docker page.