A modern, AI-powered support desk application that combines agile project management with intelligent ticket handling. Built with React, TypeScript, and Ollama integration for AI features.
- Real-time ticket statistics and metrics
- Interactive charts showing ticket distribution by category and priority
- Recent ticket activity feed
- AI agent status monitoring
- Performance metrics including resolution times and trends
- Comprehensive ticket lifecycle management
- Advanced filtering and search capabilities
- Priority-based ticket organization
- Category-based classification
- Real-time status updates
- Detailed ticket history tracking
- Sentiment Analysis: Analyzes customer ticket sentiment
- Smart Routing: Automatically assigns tickets to appropriate teams
- Time Estimation: Predicts resolution time for tickets
- Recommendations: Suggests solutions based on historical data
- Action Planning: Generates step-by-step resolution plans
- Ticket Summarization: Creates concise summaries of lengthy tickets
- Ticket distribution visualization
- Priority-based analytics
- Resolution time tracking
- Team performance metrics
- Customer satisfaction tracking
- Core: React 18 with TypeScript
- Build Tool: Vite
- UI Components: shadcn-ui (Radix UI)
- Styling: Tailwind CSS
- State Management: TanStack Query (React Query)
- Charts: Recharts
- Forms: React Hook Form + Zod
- Routing: React Router DOM
- Notifications: Sonner
- Framework: Flask (Python)
- AI Integration: Ollama
- LLM Support: Default model - llama3
- API: RESTful endpoints
- CORS: Enabled for cross-origin requests
- Node.js (Latest LTS version)
- Python 3.8+
- Ollama installed locally
- npm or bun package manager
-
Clone the repository bash git clone https://github.com/AP4549/Agile-Support.git cd Agile-Support
-
Frontend Setup bash
npm install
bun install
npm run dev
bun run dev
- Backend Setup bash cd backend
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python app.py
- Ollama Setup bash
ollama pull llama3 Ensure Ollama is running at http://localhost:11434
Create a .env file in the root directory: env
VITE_API_URL=http://localhost:5000
OLLAMA_URL=http://localhost:11434 OLLAMA_MODEL=llama3
- npm run dev - Start development server
- npm run build - Build for production
- npm run preview - Preview production build
- npm run lint - Run ESLint
- components/: Reusable React components
- ui/: Base UI components (buttons, inputs, cards)
- dashboard/: Dashboard-specific components (charts, stats)
- tickets/: Ticket management components
- layout/: Layout and structure components
- pages/: Page components and routing logic
- hooks/: Custom React hooks for shared logic
- lib/: Utility functions and helper methods
- types/: TypeScript type definitions and interfaces
- agents/: AI agent implementations
- actions_agent.py: Generates action plans
- recommendations_agent.py: Provides solution recommendations
- router_agent.py: Handles ticket routing
- sentiment_analyzer.py: Analyzes ticket sentiment
- summarizer_agent.py: Creates ticket summaries
- time_estimator.py: Estimates resolution time
- data/: Data management and storage
- app.py: Flask application setup
- routes.py: API endpoint definitions
- agent_service.py: AI agent coordination
- ollama_service.py: Ollama LLM integration
- ticket_service.py: Ticket operations
- data_loader.py: Data loading utilities
- utils.py: Helper functions
- tsconfig.json: TypeScript compiler options
- vite.config.ts: Vite bundler configuration
- tailwind.config.ts: Tailwind CSS customization
- postcss.config.js: PostCSS processing setup
- package.json: Project metadata and dependencies
- Static files served directly by the web server
- Images, icons, and other media assets
This structure follows a modular architecture that separates concerns between frontend and backend, with clear organization of AI capabilities, UI components, and business logic.
The application includes several specialized AI agents:
- Sentiment Analyzer: Evaluates ticket tone and urgency
- Router Agent: Determines optimal ticket routing
- Time Estimator: Predicts resolution timeframes
- Recommendations Agent: Suggests solutions
- Summarizer Agent: Creates ticket summaries
- Actions Agent: Generates action plans
- Customizable through Tailwind configuration
- Dark/Light mode support
- Configurable color schemes
- Custom component styling
- Configurable through environment variables
- Supports any Ollama-compatible model
- Adjustable parameters per agent
- CORS protection
- Environment variable management
- Secure API endpoints
- Type-safe implementations
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License.
For support:
- Open an issue in the GitHub repository
- Check existing documentation
- Contact the development team
