A comprehensive AI-powered sports analytics platform featuring real-time game analysis, support for announcer reports, and a personal AI football analyst willing to help at any time.
- Intelligent Chat Interface: Ask questions about games, players, and statistics
- Professional Analysis: AI acts as collegiate and NFL analyst
- Real-time Insights: Get instant analysis of current season games
- Radial Menu: Quick access to game summaries, player analysis, highlights, and stats
- Web Search Integration: AI searches for latest game information and statistics
- Team Management: Comprehensive team rosters and statistics
- Game Statistics: Detailed game analysis and performance metrics with demo data
- Schedule Management: Interactive schedule viewing and management
- Live Game Data: Real-time NFL and NCAA game information
- Dark Mode: Full dark/light theme support
- Responsive Design: Mobile-friendly interface
- Instant Response: Zero-delay chat expansion and message processing
- Message Queue: Handles multiple concurrent requests seamlessly
- Professional Prompts: Pre-configured analysis requests for games
- Auto-scroll: Always shows most recent conversation
- Session Management: Persistent chat sessions
- Multiple PDF Processing Technologies:
- PDF.js Editor (Frontend-only, Recommended)
- Backend Editor (Python + PyMuPDF)
- Alternative Backend (Python + pdf2image)
- Advanced Editing Tools:
- Drawing and annotation tools
- Text insertion and editing
- Shape tools (rectangles, circles)
- Highlighter and markup tools
- Pointer/move functionality
- Export Capabilities: Download edited PDFs and game statistics
BoothBrain/
βββ frontend/ # React frontend application
β βββ src/
β β βββ components/ # React components
β β β βββ CedarChat.js # AI chat interface
β β β βββ RadialMenu.js # Game analysis menu
β β β βββ GameStatsPage.js # Game statistics
β β β βββ TeamPageEnhanced.js # Team management
β β β βββ SchedulePage.js # Schedule management
β β βββ contexts/ # React contexts
β β β βββ DarkModeContext.js # Theme management
β β β βββ SearchContext.js # Search functionality
β β βββ services/ # API services
β β β βββ footballApi.js # Sports data API
β β β βββ chatApi.js # AI chat API
β β β βββ sportsApi.js # ESPN API integration
β β βββ utils/ # Utility functions
β βββ public/ # Static assets
β βββ package.json # Frontend dependencies
βββ backend/ # Python backend services
β βββ main.py # Main FastAPI backend
β βββ main_alt.py # Alternative backend
β βββ requirements.txt # Python dependencies
β βββ uploads/ # File storage
β βββ start_backend.bat # Windows startup script
βββ start.bat # Windows startup script
βββ start.sh # Linux/macOS startup script
βββ README.md # This file
- Node.js (v16 or higher)
- Python (v3.8 or higher)
- npm or yarn
-
Navigate to frontend directory:
cd frontend -
Install dependencies:
npm install
-
Start development server:
npm start
-
Access the application: Open http://localhost:3000 in your browser
Windows:
# Double-click or run:
start.batLinux/macOS:
# Make executable and run:
chmod +x start.sh
./start.shThe PDF.js editor works without a backend, but for advanced features, you can run the Python backend:
-
Navigate to backend directory:
cd backend -
Install Python dependencies:
pip install -r requirements.txt
-
Start the server:
python main.py
-
Install additional dependencies:
pip install -r requirements_alt.txt
-
Start the alternative server:
python start_alt.py
# Run the batch file
backend/start_backend.bat- Launch the application by running the frontend
- Navigate through the tabs:
- Dashboard: Overview and navigation
- Teams: Team management and rosters
- Schedule: Game schedules and calendar
- Stats: Game statistics and analysis
- Import: PDF upload and editing
- Select a game from the schedule or stats page
- Right-click or long-press on a game card
- Choose from analysis options:
- Game Summary: Comprehensive game analysis
- Standout Players: Top performer analysis
- Highlights: Key plays and moments
- Stats: Detailed statistical breakdown
- Chat opens automatically with professional analysis
- Click the chat input at the bottom of the screen
- Type your question about any game, player, or statistic
- Get instant AI analysis with current season data
- Ask follow-up questions for deeper insights
- Zero-delay response: Instant chat expansion
- Message queue: Handle multiple requests
- Auto-scroll: Always see latest conversation
- Professional analysis: AI acts as sports analyst
- Current season focus: Only latest data
- React 18 - UI framework
- React Router - Navigation
- Tailwind CSS - Styling
- Lucide React - Icons
- Context API - State management
- Custom Hooks - Reusable logic
- FastAPI - Python web framework
- Pillow - Image processing
- Uvicorn - ASGI server
- Google Gemini AI - AI chat integration
- Web Search API - Real-time data fetching
- Google Gemini AI - Natural language processing
- ESPN API - Live sports data
- Web Search Integration - Current season information
- Message Queue System - Concurrent request handling
App.js- Main application component with AI chat integrationCedarChat.js- AI chat interface with message queue systemRadialMenu.js- Game analysis radial menuGameStatsPage.js- Game statistics with demo data generationTeamPageEnhanced.js- Team management interfaceSchedulePage.js- Schedule viewing and managementGameCard.js- Individual game display cardsImportPage.js- PDF upload and editor selectionPDFJSEditor.js- Frontend PDF editor (PDF.js)BackendPDFEditor.js- Backend PDF editor interface
DarkModeContext.js- Theme managementSearchContext.js- Global search functionality
footballApi.js- Sports data API integrationchatApi.js- AI chat API communicationsportsApi.js- ESPN API integration
main.py- FastAPI backend with AI integrationmain_alt.py- Alternative backend implementationrequirements.txt- Python dependencies
- Solution: Check if backend is running (required for AI features)
- Alternative: Use demo data mode for statistics
- Check: Ensure Google Gemini API is configured
- Solution: Right-click or long-press on game cards
- Check: Ensure game data is loaded
- Alternative: Use manual chat input
- Solution: Clear chat queue using the "Clear Queue" button
- Check: Refresh the page if messages get stuck
- Reset: Clear browser storage if persistent issues
- Solution: Use the PDF.js editor (frontend-only)
- Alternative: Ensure Python backend is running
- Cause: PyMuPDF compatibility issue with certain PDFs
- Solution: Use PDF.js editor or pdf2image backend
- Solution: Start the Python backend server
- Check: Ensure port 8000 or 8001 is available
- Solution: Clear cache and reinstall dependencies
cd frontend rm -rf node_modules package-lock.json npm install
- Solution: Ensure prompts specify "current season only"
- Check: AI should search for latest data
- Reset: Clear chat and try again
- Frontend: Add components in
frontend/src/components/ - Backend: Add endpoints in
backend/main.pyorbackend/main_alt.py - Styling: Use Tailwind CSS classes
- State Management: Use React hooks and contexts
- Tools: Add new tools in the toolbar
- Rendering: Modify canvas rendering logic
- Export: Customize PDF export functionality
GET /- Health checkPOST /upload-pdf- Upload PDF fileGET /pdf-page/{file_id}/{page_num}- Get PDF page as imagePOST /add-annotations- Save annotationsGET /get-annotations/{file_id}- Retrieve annotationsGET /export-pdf/{file_id}- Export modified PDF
POST /chat/session- Create new chat sessionPOST /chat/message- Send message to AIPOST /chat/clear- Clear chat sessionGET /chat/session/{session_id}- Get session details
GET /games/nfl- Get NFL gamesGET /games/ncaa- Get NCAA gamesGET /games/{game_id}/summary- Get game summaryGET /games/{game_id}/boxscore- Get game boxscoreGET /teams/{team_id}/roster- Get team rosterGET /teams/{team_id}/stats- Get team statistics
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
For issues and questions:
- Check the troubleshooting section
- Review the component documentation
- Create an issue in the repository
Built with β€οΈ for AI-powered sports analytics and PDF editing
- π€ AI-Powered Analysis: Professional sports analysis with Google Gemini AI
- π¬ Interactive Chat: Zero-delay chat with message queue system
- π― Radial Menu: Quick game analysis with right-click/long-press
- π Live Data: Real-time NFL and NCAA game information
- π PDF Editing: Advanced PDF editing with multiple technologies
- π Dark Mode: Full theme support
- π± Responsive: Mobile-friendly design
- β‘ Fast: Optimized performance with concurrent request handling