#!/bin/bash # Reset script for SDB2 soundboard application # This script removes the database and cleans extracted sounds set -e # Exit on any error echo "๐Ÿ”„ Resetting SDB2 application..." # Change to backend directory cd "$(dirname "$0")" # Remove database file if it exists if [ -f "data/soundboard.db" ]; then echo "๐Ÿ—‘๏ธ Removing database: data/soundboard.db" rm "data/soundboard.db" else echo "โ„น๏ธ Database file not found, skipping" fi # List of folders to clean (only files will be deleted, preserving .gitignore) FOLDERS_TO_CLEAN=( "sounds/originals/extracted" "sounds/originals/extracted/thumbnails" "sounds/originals/text_to_speech" "sounds/normalized/extracted" "sounds/normalized/soundboard" "sounds/normalized/text_to_speech" "sounds/temp" ) # Function to clean files in a directory clean_folder() { local folder="$1" if [ -d "$folder" ]; then echo "๐Ÿงน Cleaning folder: $folder" # Find and delete all files except .gitignore (preserving subdirectories) find "$folder" -maxdepth 1 -type f -not -name '.gitignore' -delete echo "โœ… Folder cleaned: $folder" else echo "โ„น๏ธ Folder not found, skipping: $folder" fi } # Clean all specified folders echo "๐Ÿงน Cleaning specified folders..." for folder in "${FOLDERS_TO_CLEAN[@]}"; do clean_folder "$folder" done echo "โœ… Application reset complete!" echo "๐Ÿ’ก Run 'uv run python run.py' to start fresh"