Spaces:
Sleeping
Sleeping
| # 🚀 Quick Start Guide | |
| ## First Time Setup | |
| 1. **Run the setup script:** | |
| ```bash | |
| ./setup.sh | |
| ``` | |
| This will: | |
| - Check Python version (3.11+ required) | |
| - Install uv package manager if needed | |
| - Install all dependencies | |
| - Set script permissions | |
| ## Running the App | |
| ### Option 1: Shell Script (Recommended) | |
| ```bash | |
| ./run_local.sh | |
| ``` | |
| ### Option 2: Simple Script (Alternative) | |
| If you encounter build issues, use the simpler version: | |
| ```bash | |
| ./run_simple.sh | |
| ``` | |
| ### Option 3: Make Command | |
| ```bash | |
| make run | |
| ``` | |
| ### Option 4: Direct Command | |
| ```bash | |
| uv run --no-build-isolation streamlit run app.py | |
| ``` | |
| The app will open in your browser at `http://localhost:8501` | |
| ## Deploying to GitHub & HuggingFace Spaces | |
| The deploy script now pushes to **both** GitHub and HuggingFace Spaces automatically. | |
| ### Option 1: Shell Script (Recommended) | |
| ```bash | |
| ./deploy.sh | |
| ``` | |
| ### Option 2: Make Command | |
| ```bash | |
| make deploy | |
| ``` | |
| The script will: | |
| - Check for uncommitted changes | |
| - Prompt you to commit if needed | |
| - Push to GitHub (origin remote) | |
| - Push to HuggingFace Spaces (hf remote) | |
| - Show links to both deployed versions | |
| **Note:** If you don't have the HuggingFace remote configured, the script will show you how to add it: | |
| ```bash | |
| git remote add hf https://huggingface.co/spaces/amithjkamath/template-matching | |
| ``` | |
| ## Troubleshooting | |
| ### "Build backend error" or hatchling issues | |
| The project is now configured to skip the build step. If you still see build errors: | |
| ```bash | |
| ./run_simple.sh | |
| # or | |
| uv pip install -r requirements.txt | |
| uv run streamlit run app.py | |
| ``` | |
| ### "Module not found" error | |
| ```bash | |
| uv sync --no-build-isolation | |
| # or | |
| uv pip install -r requirements.txt | |
| ``` | |
| ### Port 8501 already in use | |
| ```bash | |
| uv run --no-build-isolation streamlit run app.py --server.port 8502 | |
| ``` | |
| ### Script permission denied | |
| ```bash | |
| chmod +x setup.sh run_local.sh run_simple.sh deploy.sh | |
| ``` | |
| ## Available Commands | |
| Run `make help` to see all available commands: | |
| ```bash | |
| make help # Show all commands | |
| make setup # Initial setup | |
| make install # Install dependencies | |
| make run # Run locally | |
| make deploy # Deploy to GitHub & HuggingFace | |
| make status # Check repository sync status | |
| make clean # Clean cache files | |
| make update # Update dependencies | |
| make info # Show project info | |
| ``` | |
| ## Checking Sync Status | |
| Before deploying, you can check if your local repository is in sync with GitHub and HuggingFace: | |
| ```bash | |
| ./check_status.sh | |
| # or | |
| make status | |
| ``` | |
| This will show: | |
| - Current branch and uncommitted changes | |
| - Sync status with GitHub (origin) | |
| - Sync status with HuggingFace Spaces (hf) | |
| - Recent commits | |
| - Quick action commands | |
| ## Need Help? | |
| See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed documentation. | |