punimtag/scripts/README.md
Tanya de2144be2a feat: Add new scripts and update project structure for database management and user authentication
This commit introduces several new scripts for managing database operations, including user creation, permission grants, and data migrations. It also adds new documentation files to guide users through the setup and configuration processes. Additionally, the project structure is updated to enhance organization and maintainability, ensuring a smoother development experience for contributors. These changes support the ongoing transition to a web-based architecture and improve overall project functionality.
2026-01-06 13:53:24 -05:00

2.3 KiB

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:

# 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.