A robust, full-stack application featuring a specialized multi-agent backend architecture and a responsive React-based intelligence dashboard. The system utilizes dedicated agents for vision, travel, news, and cultural analysis, coordinated through a central orchestration layer.
The backend follows a modular Agent-Orchestrator pattern:
- Agents (
src/agents/): Independent modules for specific logic (Vision, Geo, News, Cultural, etc.). - Orchestrator (
src/orchestrator/): Manages the flow between multiple agents to fulfill complex follow-up queries. - API Layer (
src/api/): Clean routing using FastAPI to expose agent capabilities. - Utils: Specialized handlers for async operations, chat history persistence, and file processing.
A modern, component-driven UI:
- Features: Specialized panels like
TabFollowupPanelfor multi-turn interactions. - Hooks: Custom hooks (
useFollowup,useTabImages) for state management and API abstraction. - Services: Centralized API client for backend communication.
| Layer | Technologies |
|---|---|
| Frontend | React, Vite, Tailwind CSS, Markdown Rendering |
| Backend | Python, FastAPI, Pydantic |
| AI/ML | Multi-Agent Systems, Orchestration Logic |
| Storage | Context & Chat History Stores |
- Python 3.9+
- Node.js 18+
- NPM
- Navigate to the backend directory:
cd backend
2. Write this :
```bash
pip install -r requirements.txt
- Configure environment variables in
.env.
- Start the server:
uvicorn src.main:app --reload
- Navigate to the frontend directory:
cd frontend
- Install dependencies:
npm install
- Start the development server:
npm run dev
├── backend/
│ ├── src/
│ │ ├── agents/ # Specialized AI logic (Travel, News, Vision)
│ │ ├── api/ # Fast API Routes
│ │ ├── orchestrator/ # Multi-agent coordination logic
│ │ └── utils/ # Async & Storage helpers
├── frontend/
│ ├── src/
│ │ ├── components/ # Reusable UI elements (Chat, Input, Cards)
│ │ ├── features/ # Complex business logic modules
│ │ ├── hooks/ # Custom React hooks
│ │ └── services/ # API integration
- Linting: ESLint is configured for frontend code quality.
- Type Safety: Pydantic models are used in the backend for request/response validation.
- Agents: Each agent is designed for unit-testing isolation.
This project is licensed under the MIT License - see the LICENSE file for details.