Project Info
Inspiration
These days, young children often spend hours rotting their brains away on iPads, while parents often have no other option than to give their kids some iPad play time to prevent tantrums. Traditional tools like device parental controls or GoGuardian are often too restrictive or time intensive for the parent, requiring parental interventions when their child gets frustrated with math problems and needs a break from math, or parental intervention when students need to get back on track with their educational activities. We wanted to create an intelligent daddy that acts like a caring tutor, gently guiding students back to productive learning when they get distracted but allowing them to take breaks when they need it. Traditional website blockers are too rigid and frustrating. We envisioned something smarter - an AI that understands context, recognizes when a student is genuinely taking a productive break and provides personalized, encouraging feedback rather than harsh restrictions (but can enforce restrictions when needed). Big Daddy has the potential to alleviate parent load while ensuring children are gaining value from their device use instead of rotting their brain away. The potential positive social impact is enormous.
What it does
Big Daddy allows students to access the web in the Big Daddy Browser (based on Firefox) while it watches their face and screen. Using GPT4o, it analyzes screenshots of their screen, and using DeepFace's emotion detector, it determines the student's emotional state. It gives live feedback to the students through notifications and by talking to the student with LMNT's voice API, and if necessary, will take control of the browser to make sure students are on appropriate activities given their emotional state and the educational / entertainment level of the activity they are doing. Big Daddy can also give positive feedback when students are doing well on their homework, or can give encouragement and recommend break activities if students are getting frustrated. Big Daddy also has content restrictions for strictly bad content, like violent or sexual websites and will redirect students away from them. Additionally, after a session with Big Daddy enabled, Big Daddy will generate a PDF report for the parent to read through to understand exactly what their children has been up to. Using all the log data it collected, Gemini 2.5 Pro will generate a comprehensive report of child activities.
Challenges we ran into
Big Daddy uses Selenium Webdriver to control the browser. However, we found that selenium is very slow with chromium based browsers, so we pivoted to Firefox. We had trouble getting the emotion recognition to not have spurious emotions, so we wrote an algorithm to smooth the emotion outputs from the model over time. Getting the agent to work reliably was originally frustrating, but after making the agentic process multi-step and enforcing restrictions in each step, we got better results. For example, we have the LLM generate educational and entertainment scores before it continuous its analysis. Additionally, there are only a fixed amount of actions it can choose from, and it considers how long a student has spent on an activity.
Accomplishments we're proud of
We are proud of making a functional big daddy in one day!
What's next
We want to bring Big Daddy to the iPad, as this is where our target audience is. However, our current solution works in schools that use Chromebooks or similar devices, which are very popular in education.
๐ Smart Student Monitoring System
An AI-powered browser monitoring system that uses computer vision and intelligent analysis to help students stay focused on their studies. The system analyzes screenshots, browsing patterns, and context to make smart decisions about when and how to intervene.
๐ NEW AI-Enhanced Features
๐ง Smart AI Agent
- Computer Vision Analysis: AI analyzes screenshots to understand content and student activity
- Intelligent Decision Making: Context-aware decisions using GPT-4 Vision
- Dynamic Timeouts: AI determines optimal timing for interventions (5-300 seconds)
- Contextual Messages: Personalized, age-appropriate messages based on analysis
- Pattern Recognition: Learns from browsing history and behavior patterns
- Progress Reports: AI-generated summaries of study sessions
๐ธ Screenshot Analysis
The AI analyzes each screenshot to determine:
- Content Type: Educational, entertainment, social media, inappropriate, etc.
- Educational Value: Scored 0-10 for learning relevance
- Distraction Level: Scored 0-10 for how off-task the content is
- Activity Description: What the student appears to be doing
- Focus Indicators: Signs of concentrated work vs casual browsing
๐ฏ Three-State Decision System
- ENCOURAGE ๐: Positive reinforcement for good study habits
- WARN โ ๏ธ: Gentle reminders when getting distracted
- INTERVENE ๐จ: Redirect to educational content when needed
๐ Quick Start
1. Install Dependencies
pip install -r requirements.txt
2. Set OpenAI API Key
export OPENAI_API_KEY="your-api-key-here"
3. Run the Smart Monitoring System
# Full monitoring with AI analysis
python student_monitor.py
# Test AI analysis on recent activity
python student_monitor.py --test
# Custom intervals
python student_monitor.py --browser-interval 3 --ai-interval 10
๐ ๏ธ Advanced Usage
Individual Components
Smart AI Agent (Standalone)
# Test mode - analyze recent logs
python ai_agent.py --test
# Continuous monitoring
python ai_agent.py --interval 15
Browser Monitor (Standalone)
# Basic monitoring
python browser_monitor_fixed.py
# Custom settings
python browser_monitor_fixed.py --interval 3 --url https://www.khanacademy.org
Command Line Options
Student Monitor
python student_monitor.py [OPTIONS]
Options:
--headless Run browser in headless mode
--api-key KEY OpenAI API key
--browser-interval N Browser monitoring interval (default: 5s)
--ai-interval N AI analysis interval (default: 15s)
--test Run AI test analysis only
AI Agent
python ai_agent.py [OPTIONS]
Options:
--api-key KEY OpenAI API key
--interval N Analysis interval (default: 10s)
--test Analyze recent logs only
๐ How It Works
1. Browser Monitoring
- Captures screenshots every 5 seconds
- Logs URL, title, search queries, and page content
- Tracks navigation and tab management
- Handles context recovery for stability
2. AI Analysis Pipeline
Screenshot โ Computer Vision โ Pattern Analysis โ Decision Making โ Action
โ โ โ โ โ
Base64 Encode โ GPT-4 Vision โ Browsing History โ Context AI โ Intervention
3. Intelligent Decision Process
The AI considers:
- Current Content: What's on screen right now
- Time on Site: How long student has been on current page
- Browsing Patterns: Recent navigation behavior
- Focus Score: Calculated from site switches and content types
- Educational Ratio: Proportion of educational vs distracting content
- Previous Interventions: Avoids being too pushy
4. Dynamic Actions
- Smart Timeouts: AI determines wait times based on urgency
- Contextual Messages: Personalized based on student's activity
- Educational Alternatives: AI suggests relevant learning resources
- Progressive Intervention: Escalates from encouragement to redirection
๐ Data Collection
Browser Activity (logs.csv)
- Timestamp and URL
- Page title and screenshot path
- OCR text extraction
- Search queries and page content
- Tab count and navigation events
AI Analysis (ai_analysis.csv)
- AI decisions and reasoning
- Screenshot analysis results
- Browsing pattern metrics
- Timeout and urgency levels
- Intervention success rates
๐จ AI Analysis Examples
Screenshot Analysis Output
{
"content_type": "educational",
"educational_value": 9,
"distraction_level": 1,
"description": "Student working on Khan Academy math problems",
"specific_activity": "solving algebra equations",
"focus_indicators": "concentrated work pattern"
}
Pattern Analysis Output
{
"pattern": "focused_study",
"trend": "improving",
"focus_score": 8.5,
"educational_ratio": 0.85,
"site_switches": 2,
"unique_sites": 3
}
AI Decision Output
{
"recommendation": "encourage",
"timeout": 120,
"message": "Excellent work on those math problems! You've been focused for 15 minutes.",
"reasoning": "High educational value and sustained focus detected",
"urgency": "low"
}
๐ง Configuration
Monitoring Intervals
- Browser Monitoring: 3-10 seconds (default: 5s)
- AI Analysis: 10-30 seconds (default: 15s)
- Screenshot Capture: Every browser log event
- Pattern Analysis: Rolling 10-minute window
AI Model Settings
- Vision Model: GPT-4 Vision Preview
- Text Model: GPT-3.5 Turbo (fallback)
- Temperature: 0.7 (balanced creativity/consistency)
- Max Tokens: 1000 per analysis
Timeout Ranges
- Encourage: 30-300 seconds
- Warn: 10-120 seconds
- Intervene: 5-30 seconds (immediate for inappropriate content)
๐ก๏ธ Safety Features
Content Filtering
- Real-time inappropriate content detection
- Immediate intervention for harmful material
- Age-appropriate messaging and alternatives
- Comprehensive keyword filtering
Privacy Protection
- Local data storage only
- Optional headless mode
- No data transmitted except to OpenAI API
- Screenshots stored locally with automatic cleanup
Error Handling
- Graceful browser context recovery
- Fallback decision making if AI fails
- Automatic retry mechanisms
- Comprehensive error logging
๐ฏ Use Cases
For Students
- Study Session Monitoring: Stay focused during homework time
- Distraction Management: Gentle reminders to get back on track
- Learning Reinforcement: Positive feedback for good study habits
- Progress Tracking: AI-generated study session reports
For Parents/Educators
- Activity Oversight: Monitor student computer usage
- Learning Analytics: Understand study patterns and effectiveness
- Intervention Logs: Review when and why interventions occurred
- Progress Reports: AI-generated summaries of student focus
For Researchers
- Behavior Analysis: Study patterns in student computer usage
- AI Decision Making: Research intelligent tutoring systems
- Computer Vision: Analyze educational content recognition
- Learning Analytics: Understand digital learning behaviors
๐ Performance Metrics
AI Accuracy
- Content Classification: ~90% accuracy on educational vs distracting content
- Inappropriate Detection: 99%+ accuracy with immediate intervention
- Focus Assessment: Correlates well with manual observation
- Message Relevance: Contextually appropriate 95%+ of the time
System Performance
- Browser Monitoring: <1% CPU overhead
- AI Analysis: 2-5 seconds per analysis
- Screenshot Processing: 1-2 seconds average
- Memory Usage: <200MB typical
๐ฎ Future Enhancements
Planned Features
- Multi-Student Support: Monitor multiple students simultaneously
- Learning Objectives: Align interventions with specific learning goals
- Adaptive Timing: Learn optimal intervention timing for each student
- Voice Notifications: Audio alerts and encouragement
- Mobile App: Remote monitoring and control
AI Improvements
- Fine-tuned Models: Custom models trained on educational content
- Emotion Recognition: Detect frustration or engagement levels
- Learning Style Adaptation: Tailor interventions to individual preferences
- Predictive Analytics: Anticipate when students might get distracted
๐ค Contributing
We welcome contributions! Areas of interest:
- AI model improvements
- New educational site integrations
- Better content classification
- Performance optimizations
- Additional notification methods
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Support
Common Issues
- OpenAI API Key: Make sure it's set correctly
- Browser Crashes: Use
--headlessmode for stability - Screenshot Failures: Check disk space and permissions
- AI Analysis Slow: Reduce analysis interval or use lighter models
Getting Help
- Check the error logs in the console output
- Review the CSV files for debugging information
- Test individual components separately
- Use
--testmode to verify AI functionality
๐ Built for better learning through intelligent technology
Analysis
View
Metric
- 7
- 7
- 4
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- LangChainIn code
- OpenAIIn code
- PythonIn code
- TensorFlowIn code
- Google GeminiClaimed
4 of 5 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
210 KB
Source files
17
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
whackamadoodle3000/Big-Daddy
246 files ยท 270.8 MB ยท @ 58ccae2
Structure
Application logic
20 files ยท 8%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here โ open the file browser to check anything the diagram implies.
Languages
- Python96%
- Markdown4%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
requirements.txt
pypi ยท 17- duckduckgo-search
- fpdf2
- google-genai
- langchain
- langchain-community
- langchain-openai
- lmnt
- Markdown
- numpy
- openai
- pandas
- Pillow
- pytesseract
- python-dotenv
- requests
- selenium
- webdriver-manager
emotion_detection/requirements.txt
pypi ยท 7- deepface
- matplotlib
- mediapipe
- numpy
- opencv-python
- Pillow
- tensorflow
Declared in the repositoryโs manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This projectโs features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.