# Scripts Directory

This directory contains utility scripts organized by purpose.

## Directory Structure

### `db/` - Database Utilities
Database management and migration scripts:
- `drop_all_tables.py` - Drop all database tables
- `drop_all_tables_web.py` - Drop all web database tables
- `grant_auth_db_permissions.py` - Grant permissions on auth database
- `migrate_sqlite_to_postgresql.py` - Migrate from SQLite to PostgreSQL
- `recreate_tables_web.py` - Recreate web database tables
- `show_db_tables.py` - Display database table information

### `debug/` - Debug and Analysis Scripts
Debugging and analysis tools:
- `analyze_all_faces.py` - Analyze all faces in database
- `analyze_pose_matching.py` - Analyze face pose matching
- `analyze_poses.py` - Analyze face poses
- `check_database_tables.py` - Check database table structure
- `check_identified_poses_web.py` - Check identified poses in web database
- `check_two_faces_pose.py` - Compare poses of two faces
- `check_yaw_angles.py` - Check face yaw angles
- `debug_pose_classification.py` - Debug pose classification
- `diagnose_frontend_issues.py` - Diagnose frontend issues
- `test_eye_visibility.py` - Test eye visibility detection
- `test_pose_calculation.py` - Test pose calculation

### `utils/` - Utility Scripts
General utility scripts:
- `fix_admin_password.py` - Fix admin user password
- `update_reported_photo_status.py` - Update reported photo status

## Root-Level Scripts

Project-specific scripts remain in the repository root:
- `install.sh` - Installation script
- `run_api_with_worker.sh` - Start API with worker
- `start_backend.sh` - Start backend server
- `stop_backend.sh` - Stop backend server
- `run_worker.sh` - Run RQ worker
- `demo.sh` - Demo helper script

## Database Shell Scripts

Database-related shell scripts remain in `scripts/`:
- `drop_auth_database.sh` - Drop auth database
- `grant_auth_db_delete_permission.sh` - Grant delete permissions
- `setup_postgresql.sh` - Set up PostgreSQL

## Usage

Most scripts can be run directly:
```bash
# Database utilities
python scripts/db/show_db_tables.py

# Debug scripts
python scripts/debug/analyze_all_faces.py

# Utility scripts
python scripts/utils/fix_admin_password.py
```

Some scripts may require environment variables or database connections. Check individual script documentation or comments for specific requirements.

