Skip to main content

Development Setup

This guide covers setting up your local development environment for Synapse SDK.

Prerequisites

Before contributing, ensure you have:

  • Python 3.12 or higher (required)
  • Git for version control
  • uv package manager (recommended) or pip

Installing uv

macOS/Linux:

Install uv (macOS/Linux)
curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

Install uv (Windows)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
Setup with uv
# Create virtual environment with Python 3.12
make uv-venv

# Activate the virtual environment
source .venv/bin/activate # On Windows: .venv\Scripts\activate

# Install all dependencies including dev extras
make uv-install

Or run both steps at once:

Quick setup
make uv-setup

Using pip (Alternative)

Setup with pip
# Create virtual environment
python -m venv .venv
source .venv/bin/activate

# Install with all extras
pip install -e ".[dev,test]"

Available Makefile Commands

CommandDescription
make uv-venvCreate virtual environment with Python 3.12
make uv-installInstall all dependencies
make uv-setupCreate venv and install dependencies
make uv-clean-venvRemove virtual environment
make testRun all tests
make test-coverageRun tests with coverage report
make docsStart documentation dev server
make docs-buildBuild documentation
make docs-genGenerate API docs from docstrings

Verifying Installation

After setup, verify everything works:

Verify installation
# Check Python version
python --version # Should be 3.12+

# Run tests
make test

# Start docs server
make run-docs