A sophisticated fullstack application powered by Azure AI models and LangGraph for intelligent web research. This research assistant performs comprehensive analysis on user queries by dynamically generating search terms, conducting web research, reflecting on results to identify knowledge gaps, and iteratively refining its approach to deliver well-supported answers with citations.
- π¬ Modern Fullstack Architecture - React frontend with TypeScript and LangGraph-powered backend
- π€ Azure AI Integration - Powered by Azure OpenAI's latest models for superior reasoning
- π Intelligent Research - Dynamic search query generation and iterative refinement
- π Web Research Engine - Integrated Tavily Search API with smart content analysis
- π§ Reflective AI - Self-analyzing system that identifies knowledge gaps and adapts strategies
- π Source Citations - Comprehensive answers with proper attribution and references
- β‘ Real-time Updates - Live progress tracking with activity timeline
- π¨ Enhanced Professional UI - Clean, responsive widescreen desktop interface with modern design
- π― Research Intelligence Panel - AI-powered insights with methodology analysis, source quality tracking, and progress monitoring
- π Visualization Carousel - Interactive carousel for generated charts and data visualizations with keyboard navigation
- π Quick Research Templates - Industry-specific research prompts for Retail, Manufacturing, Hospitality, and more
- π Smart Collapsible Interface - Adaptive sidebar that optimizes space based on usage context
- π Dynamic Progress Tracking - Real-time research progress with intelligent confidence scoring
π¦ o3-fullstack-langgraph-quickstart/
βββ π¨ frontend/ # React + TypeScript + Tailwind CSS
β βββ src/components/ # Enhanced UI components
β β βββ VisualizationCarousel.tsx # Interactive visualization display
β β βββ ChatMessagesView.tsx # Enhanced chat interface
β β βββ ActivityTimeline.tsx # Research progress tracking
β β βββ ThemeProvider.tsx # Dark theme management
β β βββ WelcomeScreen.tsx # Improved welcome interface
β β βββ ui/ # Shadcn UI components
β βββ src/lib/ # Utilities and helpers
β βββ ...
βββ π€ backend/ # LangGraph + FastAPI + Azure AI
β βββ src/agent/ # Research agent logic
β β βββ graph.py # LangGraph workflow
β β βββ configuration.py # Model configuration
β β βββ tools_and_schemas.py # Web research tools
β β βββ prompts.py # AI prompts and templates
β β βββ state.py # Agent state management
βββ π Documentation/ # Enhanced documentation
β βββ UI_ENHANCEMENT_SUMMARY.md
β βββ RESEARCH_INTELLIGENCE_FIXES.md
β βββ LAYOUT_IMPROVEMENTS_SUMMARY.md
βββ π³ Deployment files # Docker & docker-compose
- Node.js 18+ and npm
- Python 3.8+
- Azure OpenAI API Key with access to latest models
- Tavily Search API Key for web research (optional)
-
Configure Azure OpenAI credentials:
cd backend cp .env.example .env
-
Add your Azure OpenAI credentials to
.env
:AZURE_OPENAI_API_KEY="your_azure_openai_api_key" AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com/" AZURE_OPENAI_API_VERSION="2024-12-01-preview" TAVILY_API_KEY="your_tavily_api_key" # Optional for web research
-
Install backend dependencies:
cd backend pip install .
-
Install frontend dependencies:
cd frontend npm install
-
Start development servers:
make dev
-
Access the application:
- Frontend:
http://localhost:5173/app
- Backend API:
http://localhost:2024
- LangGraph UI:
http://localhost:2024/docs
- Frontend:
Once running, you'll experience:
- Research Intelligence Panel - Real-time insights with color-coded analysis cards
- Quick Research Templates - Industry-specific prompts for immediate use
- Interactive Progress Tracking - Visual progress ring with research mode indicators
- Visualization Carousel - Modern display for generated charts and data
- Smart Collapsible Layout - Interface adapts to optimize space during research
The research assistant uses a sophisticated multi-step approach powered by Azure AI models:
- Azure AI analyzes user input and generates strategic search queries
- Advanced prompt engineering ensures comprehensive coverage of topics
- Executes targeted web searches using Tavily Search API
- Azure AI processes and analyzes search results for relevance and quality
- Extracts key information while maintaining source attribution
- Azure AI's reasoning capabilities identify knowledge gaps and inconsistencies
- Determines if additional research is needed or if information is sufficient
- Self-correcting mechanism improves research quality iteratively
- Generates follow-up queries based on gap analysis
- Continues research until comprehensive understanding is achieved
- Configurable loop limits prevent infinite iterations
- Azure AI synthesizes gathered information into coherent, well-structured answers
- Includes proper citations and source references
- Maintains factual accuracy while ensuring readability
The application is production-ready with Docker support and requires Redis and PostgreSQL for LangGraph operations.
- Docker & Docker Compose - For containerized deployment
- Redis - Message broker for real-time streaming
- PostgreSQL - Data persistence and state management
- Azure OpenAI - latest model access
-
Build the production containers:
docker-compose -f docker-compose.production.yml build --no-cache
-
Configure environment variables:
# Copy and update with your Azure OpenAI credentials cp .env.example .env
-
Deploy with docker-compose:
docker-compose -f docker-compose.production.yml up -d
-
Access the application:
- Application:
http://localhost:8000/app/
- API:
http://localhost:8000
- Application:
Update frontend/src/App.tsx
with your deployment URL:
- Development:
http://localhost:2024
- Docker:
http://localhost:8000
- Production: Your domain/IP address
The application uses specific Azure AI models configurations defined in backend/src/agent/configuration.py
:
# Default Azure AI model configuration
query_generator_model: str = "gpt-4.1-mini" # Search query generation
reflection_model: str = "o4-mini" # Research gap analysis
answer_model: str = "gpt-4.1-mini" # Final response synthesis
reasoning_model: str = "o4-mini" # Iterative reasoning
Azure OpenAI Deployment Setup:
- Deploy the required Azure AI models in your Azure OpenAI resource
- Use the deployment names that match the configuration above
- Ensure your API version supports Azure AI models:
2024-12-01-preview
- React with TypeScript - Type-safe component architecture
- Vite - Fast development and optimized builds
- Tailwind CSS - Utility-first styling framework
- Shadcn UI - Modern, accessible component library
- Lucide React - Beautiful icon library for modern interfaces
- React Markdown - Advanced markdown rendering with GFM support
- LangGraph - Advanced agent workflow orchestration
- FastAPI - High-performance Python web framework
- Azure OpenAI - O3-mini models for reasoning and generation
- Tavily - Web search and research API
- Docker - Containerized deployment
- Redis - Real-time message streaming
- PostgreSQL - Persistent data storage
This application leverages Azure AI's latest models for enhanced reasoning:
- Query Generation:
gpt-4.1-mini
- Strategic search query formulation - Reflection & Reasoning:
o4-mini
- Advanced analytical capabilities and gap identification - Answer Synthesis:
gpt-4.1-mini
- Coherent response generation with citations
- Advanced Reasoning - Superior logical analysis and problem-solving
- Context Awareness - Maintains coherent analysis across complex research topics
- Self-Reflection - Meta-cognitive abilities for iterative research improvement
- Efficient Processing - Optimized performance for real-time research workflows
β
Latest AI Technology - Built with Azure OpenAI's cutting-edge models
β
Advanced Reasoning - State-of-the-art analytical and reflection capabilities
β
Real-Time Research - Live web data integration with smart content analysis
β
Accurate Citations - Proper source attribution and fact verification
β
Production Ready - Docker deployment with Redis and PostgreSQL support
β
Professional UI/UX - Widescreen-optimized interface with research intelligence panel
β
Smart Insights - AI-powered methodology analysis and progress tracking
β
Interactive Visualizations - Modern carousel with keyboard navigation support
β
Industry Templates - Pre-configured research prompts for business use cases
β
Adaptive Layout - Collapsible interface that optimizes space intelligently
β
Overflow Protection - Responsive design with proper text wrapping and layout management
Professional Widescreen Experience
- β Research Intelligence Panel - Comprehensive insights with methodology analysis, source tracking, and progress monitoring
- β Visualization Carousel - Interactive carousel for charts with keyboard navigation and dot indicators
- β Smart Collapsible Layout - Quick research section automatically collapses during active conversations
- β Industry-Specific Templates - Added Retail, Manufacturing, and Hospitality research prompts
- β Overflow Protection - Fixed text wrapping and responsive layout issues
- β Unique Timestamps - Each insight now shows realistic timing progression
- β Dynamic Confidence - Real-time confidence calculations based on research quality
- β Optimized Metadata - Streamlined to focus on Sources and timing information
- β VisualizationCarousel.tsx - New carousel component for interactive data visualization display
- β Enhanced App.tsx - Improved sidebar layout with collapsible sections and research intelligence
- β Responsive Design - Better handling of different screen sizes and content overflow
- β Type Safety - Enhanced TypeScript interfaces for research insights and metadata
- β Reduced Bundle Size - Optimized component imports and removed unused dependencies
- β Smooth Animations - 300ms transitions for collapsible sections and state changes
- β Efficient Rendering - Improved React hooks and state management for better performance
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- LangGraph Documentation - Agent workflow framework
- Azure OpenAI Service - AI model documentation
- LangSmith - Monitoring and observability platform
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
The application features a comprehensive redesign optimized for professional widescreen desktop use with advanced research intelligence capabilities.
- Methodology Insights - Real-time analysis of research strategy optimization and query generation
- Source Quality Tracking - Dynamic evaluation of source discovery, verification, and content analysis
- Progress Analytics - Intelligent tracking with confidence scoring based on research depth
- Knowledge Gap Analysis - Automated identification of information gaps with targeted follow-up strategies
- Color-coded Cards - Visual hierarchy with type-specific themes (Analysis: Blue, Sources: Green, Methodology: Purple, Progress: Orange)
- Smart Timestamps - Unique time tracking for each insight showing realistic research progression
- Dynamic Confidence - Real-time confidence calculations based on source count and research quality
- Modern Carousel Design - Sleek navigation for generated charts and data visualizations
- Multi-Navigation Support - Button controls, dot indicators, and keyboard arrow key navigation
- Responsive Display - Automatic sizing with backdrop blur effects for professional presentation
- Progress Indicators - Clear "X of Y" counters and visual navigation aids
Pre-configured research templates for professional use cases:
- ποΈ Retail Intelligence - Consumer behavior trends, e-commerce patterns, omnichannel strategies
- π Manufacturing - Industry 4.0 technologies, automation, supply chain optimization
- π¨ Hospitality - Guest experience innovations, recovery trends, technology adoption
- π€ AI Trends - Latest developments in artificial intelligence and machine learning
- π Crypto Market - Blockchain adoption, DeFi analysis, market trends
- π± Clean Energy - Sustainability initiatives, renewable technology developments
- πΌ Future of Work - Remote work impact, productivity trends, company culture
- Collapsible Quick Research - Automatically minimizes when research begins to optimize screen space
- Manual Toggle Control - Click-to-expand functionality with visual chevron indicators
- Responsive Space Management - Dynamic sidebar layout that adapts to content and usage context
- Overflow Protection - Proper text wrapping and responsive handling prevents layout breaks
- Professional Spacing - Consistent margins, padding, and gap management throughout
- Real-time Progress Ring - Visual progress indicator with percentage completion
- Research Mode Labels - Clear indication of research depth (Quick, Balanced, Thorough)
- Status Indicators - Color-coded status badges (Completed, In Progress, Pending)
- Theme Integration - Consistent dark theme with gradient backgrounds and backdrop blur
- Optimized Typography - Clear hierarchy with proper font weights and color contrast