Skip to content

Development Setup

SaturnZap edited this page Mar 28, 2026 · 1 revision

Development Setup

Requirements

  • Ubuntu 24.04 (or compatible Linux)
  • Python 3.12+
  • uv package manager

Quick Start

# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env

# Clone and install
git clone https://github.com/ShoneAnstey/SaturnZap.git
cd SaturnZap
uv venv
source .venv/bin/activate
uv sync

# Verify
sz --help

Git Hooks

The project uses a custom hooks directory (hooks/). On clone, configure git to use it:

git config core.hooksPath hooks

Pre-commit Hook

The pre-commit hook runs automatically on git commit and:

  1. Security scan — Runs security/security_scan.py on staged .py files. Blocks commit if CRITICAL or HIGH findings exist.
  2. Documentation check — Warns if code changes are staged without corresponding updates to docs/ or README.md.

Pre-push Hook

The pre-push hook runs on git push and reminds you to:

Network

  • Development: Bitcoin signet (preferred — more predictable than testnet3)
  • Never: mainnet during development

DigitalOcean Droplet

  • IP: See .env (not committed)
  • SSH: ssh saturnzap (key: ~/.ssh/saturnzap)
  • Specs: 2 GB RAM / 1 AMD vCPU / 50 GB disk / SFO3

Home Architecture Phase-1-Plan Development-Setup Security-Scanner

Clone this wiki locally