A full-stack application featuring automated ticket classification using the Gemini AI API.
- Speed: It offers the lowest latency for "on-the-fly" classification as the user types.
- JSON Mode: It reliably outputs structured data, making it easy to parse into Django models.
- Context Window: Its efficiency with short prompts makes it ideal for ticket descriptions.
- Database: Used PostgreSQL over SQLite to ensure production-grade data integrity and support for concurrent connections.
- Docker Orchestration: Implemented a
depends_onwith ahealthcheck(orsleep) to ensure the Database is ready before Django attempts migrations. - API Optimization: Used Django's
icontainsfor efficient ticket searching and built-in aggregation for the "Stats" dashboard to minimize frontend processing. - Frontend UX: Implemented a "blur" trigger for AI classification to save API tokens while providing a seamless "auto-fill" experience.
-
Create a
.envfile in this root directory: GEMINI_API_KEY=your_api_key_here -
Run the command: docker-compose up --build
-
Access the App: Frontend: http://localhost:3000 Backend API: http://localhost:8000/api