CNN-based image classification with FastAPI backend and Streamlit dashboard.
Easiest - GitHub Container Registry (any OS):
# Setup (one time)
./setup.sh
# Deploy (for all users)
./deploy.sh run💡 For users: Just run
./deploy.sh runafter setup
For developers: Run./deploy.sh buildthen./deploy.sh run
Local Development (no Docker):
pip install -r requirements.txt
uvicorn api.main:app --port 8000 &
API_URL=http://localhost:8000 streamlit run streamlit/app.pyDocker Build (developers):
HOST_UID=$(id -u) HOST_GID=$(id -g) docker compose up --buildIntel Image Classification from Kaggle (~25,000 images, 6 classes)
Download: kaggle.com/datasets/puneet6060/intel-image-classification
| Model | Accuracy | Time |
|---|---|---|
| Baseline | 73% | ~5 min |
| Regularized | 79% | ~8 min |
| Transfer Learning | 88% | ~15 min |
- DEPLOY.md - Complete deployment guide
- RUN.md - Detailed run instructions
- DATASET_SETUP.md - Dataset configuration
- TROUBLESHOOTING.md - Common issues
TensorFlow, FastAPI, Streamlit, Docker

