# Pre-Deployment Checklist ✅ Complete this checklist before deploying to Hugging Face Spaces. ## 1. Model Files - [ ] `pytorch_model.pth` is in `backend/api/models/` - [ ] `model_best.keras` is in `backend/api/models/` - [ ] Both models are in HuggingFace LFS format (`.gitattributes`) - [ ] Models are not corrupted (test locally first) ## 2. Local Testing - [ ] Cloned repository successfully - [ ] Added trained models - [ ] Built Docker image: `docker build -t intel .` - [ ] Container starts without errors - [ ] Can access http://localhost:7860 - [ ] Classification endpoint works: POST to `/api/classify/` - [ ] Frontend loads properly - [ ] API documentation visible at `/swagger/` ## 3. Configuration - [ ] Updated `.env` if using custom settings - [ ] Verified `ALLOWED_HOSTS` includes HF domains - [ ] Checked `CORS_ALLOWED_ORIGINS` is correct - [ ] Confirmed `DEBUG=False` for production - [ ] Reviewed `DJANGO_SECRET_KEY` (auto-set is fine) ## 4. Code Quality - [ ] No hardcoded API keys or passwords - [ ] Removed development-only code - [ ] All imports are available in `requirements.txt` - [ ] No local file paths hardcoded - [ ] Verified .gitignore doesn't exclude needed files ## 5. Git & Repository - [ ] All changes committed: `git status` is clean - [ ] `.env` is in `.gitignore` (no secrets in repo) - [ ] Model files tracked with Git LFS if large - [ ] Remote configured: `git remote add hf ` - [ ] Tested: `git push --dry-run hf main` ## 6. Documentation - [ ] README.md updated with your username - [ ] Updated citation with your info - [ ] Added your model training notes if relevant - [ ] Confirmed DEPLOYMENT.md is accurate - [ ] Link to your HF Space is correct ## 7. Hugging Face Setup - [ ] Created Hugging Face Space - [ ] Set space as "Docker" SDK - [ ] Set visibility (Public/Private) - [ ] Added appropriate description and license - [ ] Configured any secrets needed (if API keys used) ## 8. Final Tests (Optional) - [ ] Run `docker build .` one more time - [ ] Test with different image formats (jpg, png, webp) - [ ] Test with both model options (pytorch, tensorflow) - [ ] Verify error handling (invalid image, bad requests) - [ ] Check performance with larger images ## 9. Deployment - [ ] All above checks passed ✅ - [ ] Ready message: `git push hf main` - [ ] Monitoring HF Space for build progress - [ ] Verified Space URL is accessible - [ ] Tested deployed Space (give it 5 minutes to start) ## 10. Post-Deployment - [ ] Space is running without errors - [ ] All endpoints respond correctly - [ ] Frontend loads on live URL - [ ] API returns correct predictions - [ ] No CORS or security errors - [ ] Shared link with team/public --- ## Deployment Command ```bash # Final push to Hugging Face git push hf main # View logs (from HF Space interface) # Monitor at: https://huggingface.co/spaces/USERNAME/Intel_classification/logs ``` --- ## Rollback Plan If something goes wrong: ```bash # Revert to previous working state git log --oneline | head -5 git reset --hard git push hf main --force # Force push (use with caution) # Or fix issues and push again git add . git commit -m "Fix: description of fix" git push hf main ``` --- ## Common Issues & Fixes | Issue | Solution | |-------|----------| | Build timeout | Reduce image size or optimize dependencies | | Out of memory | Prune unused Docker images/volumes | | Models not loading | Verify file names match exactly | | CORS errors | Check Django CSRF_TRUSTED_ORIGINS | | Port conflicts | Ensure 7860 is available locally | | Frontend not showing | Check React build in `frontend/build/` | --- ## Success Indicators ✨ Your deployment is successful when: 1. ✅ HF Space shows "Running" status 2. ✅ Website loads at your HF Space URL 3. ✅ Cannot refund with different images 4. ✅ Both models are selectable 5. ✅ API documentation (/swagger) is accessible 6. ✅ Admin panel works (/admin/) 7. ✅ No errors in HF Space logs --- ## Need Help? 1. **Documentation**: [DEPLOYMENT.md](DEPLOYMENT.md) 2. **Quick Start**: [QUICK_START.md](QUICK_START.md) 3. **Changes Made**: [REORGANIZATION.md](REORGANIZATION.md) 4. **GitHub Issues**: Report bugs 5. **HF Discussions**: Ask community --- **Estimated Total Time**: 15-30 minutes (first-time setup) **Good luck! 🚀**