This is the backend API for Visionify, a deep learning-powered image classification platform. Built using FastAPI and structured with Clean Architecture and Dependency Injection, this backend serves inference for multiple vision models with high modularity and scalability.
- ⚡ Fast and asynchronous RESTful API using FastAPI
- 🧱 Clean architecture for clear separation of concerns
- 🧠 Model support:
- MNIST Digit (10-class)
- MNIST Fashion
- CIFAR-10
- 🔌 Plug-and-play support for new models via DI
- 🧪 Fully testable modules
- 📦 Poetry for package and environment management
- ✅ Pre-commit hooks for consistent code quality
## 🔌 API Endpoints
| Endpoint | Method | Description |
|-------------------------------|--------|-------------------------------------|
| `/cifar/predict/` | POST | Predict using MNIST Digit model |
| `/fashion/mnist/predict/` | POST | Predict using MNIST Fashion model |
| `/mnist/digit/predict/` | POST | Predict using CIFAR-10 model |
All endpoints expect a `multipart/form-data` request with an image file.
🧪 Test endpoints via:
## ⚙️ Setup Instructions
### 1. Clone the repository
```bash
git clone https://github.com/ShyamSundhar1411/Visionify-Backend.git
cd Visionify-Backend
poetry install
poetry run uvicorn app.main:app --reload
Visit: http://localhost:8000/docs
This project uses pre-commit
for linting, formatting, and more.
pre-commit install
pre-commit run --all-files
Licensed under the MIT License.
Made with ❤️ by Shyam Sundhar