This project is a backend application built with FastAPI and Redis to handle asynchronous image processing tasks.
- 📂 Upload Images: Supports uploading one or multiple images in a single API request.
- 🔄 Asynchronous Processing: Uses Redis to manage background task queues for long-running image processing tasks.
- 🔍 Task Status Tracking: Clients can poll the status of tasks (e.g., pending, success, or failure) using a task ID.
- 🛡️ Error Handling: Robust error handling for invalid image formats and processing failures.
- FastAPI: Web framework for building the API.
- Redis: In-memory data store used for task management and status tracking.
- asyncio: Asynchronous programming for non-blocking task execution.
- Clone the repository:
git clone git@github.com:ElderEvil/lantec.git
- Install the dependencies:
uv sync
- Run the FastAPI application:
uv run fastapi dev
- POST /upload-images/: Upload one or multiple images.
- GET /task/{task_id}: Get the status of a task by its ID.