π¨ An AI-powered real-time violence detection and alert system designed to enhance public safety
π Quick Start β’ π Documentation β’ π€ Contributing β’ β Give us a star!
eyeview.ai leverages cutting-edge YOLO deep learning models integrated with Flask backend and React frontend to create a comprehensive safety monitoring solution.
| Feature | Description | Status |
|---|---|---|
| π Real-time Detection | YOLO-powered violence detection with lag-free processing | β Active |
| πΉ Evidence Recording | Automatic clip recording and Firebase storage | β Active |
| π± Instant Alerts | SMS/Call notifications via Twilio integration | β Active |
| π Live Dashboard | Real-time monitoring and incident management | β Active |
| π± Mobile Support | Compatible with mobile camera feeds | β Active |
| ποΈ Smart City Ready | Optimized for public safety and surveillance | β Active |
π― Detection β πΉ Recording β βοΈ Storage β π± Alert β π¨ Response
- πΉ Evidence Capture: System records and stores short clips in Firebase
- β‘ Instant Alerts: SMS/Calls sent via Twilio to authorities
- π Dashboard Monitoring: Real-time feed monitoring and incident history
- π Review System: Comprehensive incident management interface
The project uses a YOLOv11 nano model (yolo11n.pt) that was fine-tuned for violence detection. The training ran for 28 epochs, with the best model saved at epoch 28 based on the highest mAP50-95 score of 0.53977.
π¦ eyeview.ai
βββ π Backend/ # Flask backend (YOLO + Twilio + Firebase)
β βββ π― eye-view.py
β βββ π requirements.txt
β βββ π§ config/
β βββ π models/
β
βββ βοΈ EyeView-frontend/ # React frontend (Vite + Tailwind)
β βββ π public/
β β βββ πΌοΈ assets/
β β βββ π index.html
β βββ π src/
β β βββ π§© components/
β β βββ π pages/
β β βββ π¨ styles/
β β βββ βοΈ utils/
β βββ π .env
β βββ π¦ package.json
β βββ β‘ vite.config.js
β βββ π¨ tailwind.config.js
β
βββ π README.md
βββ π LICENSE# π Twilio Integration (SMS/Call Alerts)
TWILIO_ACCOUNT_SID=your_twilio_account_sid
TWILIO_AUTH_TOKEN=your_twilio_auth_token
TWILIO_PHONE_NUMBER=+1234567890 # π± Twilio registered number
ADMIN_PHONE_NUMBER=+919876543210 # π¨ Alert recipient number
# π₯ Firebase Configuration
FIREBASE_CONFIG=your_firebase_config_json
FIREBASE_STORAGE_BUCKET=your_storage_bucket# π₯ Firebase Web SDK Configuration
REACT_APP_FIREBASE_API_KEY=your_firebase_api_key
REACT_APP_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
REACT_APP_FIREBASE_PROJECT_ID=your_project_id
REACT_APP_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
REACT_APP_FIREBASE_APP_ID=your_app_id
# π API Configuration
REACT_APP_API_BASE_URL=http://localhost:5000git clone https://github.com/VyasaAi/eyeview.ai.git
cd eyeview.ai# Navigate to backend directory
cd Backend
# Create virtual environment
python -m venv venvπ Activate Virtual Environment:
π» Windows (PowerShell)
.\venv\Scripts\activateπ§ macOS/Linux
source venv/bin/activateπ¦ Install Dependencies & Run:
# Install required packages
pip install -r requirements.txt
# Start the backend server
python eye-view.pyπ’ Backend Status: Server running on
http://localhost:5000
# Navigate to frontend directory
cd EyeView-frontend
# Install dependencies
npm install
# Start development server
npm run devπ’ Frontend Status: Dashboard available at
http://localhost:5173
Open your browser and navigate to the displayed URL (typically http://localhost:5173) to view the EyeView dashboard.
-
π΄ Fork the Repository
# Fork on GitHub, then clone your fork git clone https://github.com/<your-username>/eyeview.ai.git cd eyeview.ai
-
πΏ Create Feature Branch
git checkout -b feature/awesome-feature-name
-
π» Make Your Changes
- Test both frontend and backend thoroughly
- Follow existing code conventions
- Add comments and documentation
-
π Commit Your Work
git add . git commit -m "feat: add awesome new feature"
-
π Push & Create PR
git push origin feature/awesome-feature-name
Then create a Pull Request on GitHub!
π― Code Standards
- Follow PEP 8 for Python code
- Use ESLint and Prettier for JavaScript/React
- Write clear commit messages using conventional commits
- Include tests for new features
- Update documentation as needed
π§ͺ Testing Requirements
- Test new features locally before submitting
- Ensure existing functionality remains intact
- Add unit tests for critical functions
- Test on multiple browsers/devices when applicable
π Documentation
- Add inline comments for complex logic
- Update README for new features
- Include usage examples
- Document API changes
| Type | Description | Examples |
|---|---|---|
| π Bug Fixes | Fix existing issues | Memory leaks, UI bugs, API errors |
| β¨ New Features | Add functionality | New detection models, dashboard widgets |
| π Documentation | Improve docs | Setup guides, API documentation |
| π¨ UI/UX | Design improvements | Better dashboard, mobile responsiveness |
| β‘ Performance | Speed & optimization | Faster detection, reduced latency |
| π§ͺ Testing | Add test coverage | Unit tests, integration tests |
- π€ Advanced AI Models: Integration with more sophisticated detection algorithms
- π Multi-language Support: Internationalization for global deployment
- π Analytics Dashboard: Detailed reporting and insights
- π Enhanced Security: Advanced authentication and encryption
- π± Mobile App: Native mobile applications for field operations
- ποΈ Scalability: Kubernetes deployment and microservices architecture
This project is licensed under the GPLv3 - see the LICENSE file for details.
- YOLO Team for the incredible object detection framework
- Open Source Community for continuous support and contributions
- Safety Advocates who inspire us to build better security solutions
π¬ Questions? Issues? Ideas?
π¬ Start a Discussion β’ π Report Bug β’ π‘ Request Feature
Built with β€οΈ for a safer world