#!/bin/bash # Linux/Mac Setup Script for Cancer@Home v2 echo "==================================" echo "Cancer@Home v2 - Setup" echo "==================================" echo "" # Check Python echo "Checking Python installation..." if command -v python3 &> /dev/null; then PYTHON_VERSION=$(python3 --version) echo "✓ Python found: $PYTHON_VERSION" else echo "✗ Python not found. Please install Python 3.8+" exit 1 fi # Check Docker echo "Checking Docker installation..." if command -v docker &> /dev/null; then DOCKER_VERSION=$(docker --version) echo "✓ Docker found: $DOCKER_VERSION" else echo "✗ Docker not found. Please install Docker" exit 1 fi # Create virtual environment echo "" echo "Creating Python virtual environment..." python3 -m venv venv echo "✓ Virtual environment created" # Activate virtual environment and install dependencies echo "" echo "Installing Python dependencies..." source venv/bin/activate pip install --upgrade pip pip install -r requirements.txt echo "✓ Dependencies installed" # Create necessary directories echo "" echo "Creating directory structure..." mkdir -p data/gdc mkdir -p data/boinc mkdir -p data/processed/fastq mkdir -p data/processed/blast mkdir -p data/processed/variants mkdir -p data/cache mkdir -p logs echo "✓ Directories created" # Start Docker containers echo "" echo "Starting Neo4j database..." docker-compose up -d sleep 10 echo "✓ Neo4j started" echo "" echo "==================================" echo "Setup Complete!" echo "==================================" echo "" echo "To start the application:" echo " 1. Activate virtual environment: source venv/bin/activate" echo " 2. Run the application: python run.py" echo "" echo "Access points:" echo " - Application: http://localhost:5000" echo " - Neo4j Browser: http://localhost:7474 (neo4j/cancer123)" echo " - API Docs: http://localhost:5000/docs" echo ""