- Overview
- Project Insights
- Video Link
- Screenshots
- Key Features
- Benefits :
- File Structure
- Working
- Setup Instructions
- Featured In:
- Acknowledgments
- Contact
- How to Contribute
- Contributing
- Code of Conduct
- Contribution Guidelines
- Suggestions & Feedback
- Show Your Support
- License
- Stargazers
- Forkers
- Project Admin
IndShield is a web application designed to revolutionize industrial safety protocols by leveraging advanced technologies. It empowers organizations to create a safer and more secure work environment for personnel and equipment.
| ๐ Stars | ๐ด Forks | ๐ Issues | ๐ Open PRs | ๐ Closed PRs | ๐ ๏ธ Languages | ๐ฅ Contributors |
๐ Exciting News...
๐ This project is now an official part of GirlScript Summer of Code โ GSSoC'25! ๐๐๐ป We're thrilled to welcome contributors from all over India and beyond to collaborate, build, and grow IndShield! Letโs make learning and career development smarter โ together! ๐๐จโ๐ป๐ฉโ๐ป
๐ฉโ๐ป GSSoC is one of Indiaโs largest 3-month-long open-source programs that encourages developers of all levels to contribute to real-world projects ๐ while learning, collaborating, and growing together. ๐ฑ
๐ With mentorship, community support, and collaborative coding, it's the perfect platform for developers to:
- โจ Improve their skills
- ๐ค Contribute to impactful projects
- ๐ Get recognized for their work
- ๐ Receive certificates and swag!
๐ I canโt wait to welcome new contributors from GSSoC 2025 to this IndShield project family! Let's build, learn, and grow together โ one commit at a time. ๐ฅ๐จโ๐ป๐ฉโ๐ป
- Motion Amplification: Identifies subtle equipment movements often invisible to the naked eye, enabling proactive maintenance and preventing unexpected breakdowns.
- Emergency Alert System: Allows individuals to signal for help by making a specific gesture (L pose) in front of a camera, ensuring prompt assistance in emergency situations.
- Restricted Zone Enforcement: Utilizes live CCTV feeds and object detection to identify unauthorized access to restricted areas, facilitating timely intervention and enforcing safety protocols.
- Fire and Safety Gear Detection: Employs machine learning algorithms to identify safety gear worn by personnel and detect potential fire risks in real-time, upholding the highest standards of safety and compliance.
- Early detection of potential issues minimizes downtime and prevents costly emergency repairs.
- Enhanced maintenance allows for targeted repairs and optimization of equipment performance.
- Reduced risk of accidents and injuries by ensuring adherence to safety protocols.
- Improved response times to emergencies through the use of the alert system.
_pycache_: This folder is automatically generated by Python and stores compiled bytecode for faster program execution. You don't need to modify its contents.ยapp.py:ย This is the core Python script containing the application logic. It defines routes, handles user interactions, and interacts with other components.instance: This folder is typically used for storing runtime data or configuration specific to a particular instance of the application.ยmodels: This folder contains yolov8 models for detection.requirements.txt: This text file lists the external Python libraries required for the application to run. Dependencies like Flask, SQLAlchemy, OpenCV, and YOLOv8 are likely specified here.ยstatic: This folder stores static assets used by the application, such as images, CSS stylesheets, and JavaScript code. These files are typically served directly by the web server without involving server-side processing.templates: This folder contains HTML templates used to dynamically generate web pages. The application likely uses a templating engine like Jinja2 to render these templates with data retrieved from the database or user input.
- Backend: Flask, a lightweight web framework in Python, is likely used to handle user requests, interact with the database, and manage application logic.
- Database: SQLAlchemy, an object-relational mapper (ORM), simplifies interaction with the database by providing an object-oriented interface.
- Machine Learning: YOLOv8, a real-time object detection model, is likely employed for features like restricted zone enforcement, fire detection, and potentially gear detection.
- MediaPipe: This open-source framework might be used for pose estimation in the emergency alert system.
- OpenCV: This open-source computer vision library is likely used for image and video processing tasks like frame capturing, object detection bounding boxes, and motion amplification.
git clone https://github.com/SurajSanap/IndShield.git
cd IndShieldpython -m venv venv
source venv/bin/activate # On Mac/Linux
venv\Scripts\activate # On WindowsThe project uses Flask, OpenCV, SQLAlchemy, Twilio, etc. Install them:
pip install -r requirements.txtIf you are getting error with any dependancy then just remove it's version from requirements.txt (ex. pandas == 1.22.3 -> pandas) and rerun above 'pip install -r requirements.txt'
Create a .env file in the project root with values for:
FLASK_SECRET_KEY=your_secret_key
TWILIO_ACCOUNT_SID=your_twilio_sid
TWILIO_AUTH_TOKEN=your_twilio_auth
TWILIO_PHONE_NUMBER=+1234567890
ADMIN_PHONE_NUMBER=+0987654321
GEMINI_API_KEY=your_google_gemini_keyNo need to add Twilio config, it's not yet implemented.
The app uses SQLite for:
user.dbcomplaint.dbcams.dbalerts.db
Run migrations:
flask db init
flask db migrate -m "Initial migration"
flask db upgradepython app.pyYou can use the IP Webcam app to connect your camera to the application. Follow these steps:
-
Install the App Download and install the IP Webcam app from the Google Play Store.
-
Configure the Camera
- Open the app and adjust your desired settings (resolution, quality, etc.).
- Start the server within the app. The app will display an IP address (e.g.,
http://192.168.1.100:8080).
-
Connect via the Application
- Open your application.
- Enter the displayed IP address and port from the app into the camera connection field.
- Click Connect to start streaming.
-
Verify the Connection
- You should now see the live feed from your camera within the application.
| Event Logo | Event Name | Event Description |
|---|---|---|
![]() |
GirlScript Summer of Code Ext 2025 | GSSOC Ext is a Three-month-long open-source program by the GirlScript Foundation |
Report bugs and issues or propose improvements through our GitHub repository's "Issues" tab.
- Firstly Star (โญ) the Repository
- Fork the Repository and create a new branch for any updates/changes/issue you are working on.
- Start Coding and do changes.
- Commit your changes
- Create a Pull Request which will be reviewed and suggestions would be added to improve it.
- Add Screenshots and updated website links to help us understand what changes is all about.
We welcome all contributions and suggestions! Whether it's a new feature, design improvement, or a bug fix - your voice matters ๐
Your insights are invaluable to us. Reach out to us team for any inquiries, feedback, or concerns.
- Thanks to all contributors of this project
- Special shoutout to GirlScript Summer of Code (GSSoCโ25) for the amazing community and support!
- Built with dedication, collaboration, and lots of chai
- GitHub Issues: Report bugs or request features
- Email: Contact the maintainers for collaboration opportunities
Feel free to reach out with any questions or feedback!
We love contributions from the community! Whether it's a bug report, a new feature, or a documentation improvement, we appreciate your help.
How to Contribute
- Fork the repository and create a new branch for your changes.
- Make your changes and ensure everything is working as expected.
- Submit a pull request with a clear description of your changes.
Found a Bug?
- Check the issue tracker to see if the bug has already been reported.
- If not, open a new issue and provide as much detail as possible.
Have a Feature Idea?
- We'd love to hear it! Open an issue to discuss your idea.
We welcome contributions from developers of all skill levels! Here are some ways you can contribute:
- ๐ Bug fixes - Help us identify and fix bugs
- โจ New features - Suggest and implement new functionality
- ๐ Documentation - Improve our docs and guides
- ๐จ UI/UX improvements - Make the platform more user-friendly
- ๐ง Performance optimizations - Help make IndShield faster and more efficient
- ๐ฑ Mobile responsiveness - Improve the mobile experience
- ๐ Security enhancements - Help keep user data safe
Thank you to everyone who has made IndShield better! ๐
Please refer to the Code of Conduct for details on contributing guidelines and community standards.
We love our contributors! If you'd like to help, please check out our CONTRIBUTING.md file for guidelines.
Thank you once again to all our contributors who has contributed to IndShield! Your efforts are truly appreciated. ๐๐
See the full list of contributors and their contributions on the GitHub Contributors Graph.
Feel free to open issues or discussions if you have any feedback, feature suggestions, or want to collaborate!
If you find IndShield project helpful, give it a star! โญ to support more such educational initiatives:
- โญ Starring the repository
- ๐ฆ Sharing on social media
- ๐ฌ Telling your friends and colleagues
- ๐ค Contributing to the project
This project is licensed under the MIT License - see the License file for details.
|
Suraj Sanap
|
| Role | Name | GitHub Profile | LinkedIn Profile |
|---|---|---|---|
| Mentor 1 | Ashutosh Kumar | ashutosh8021 | ashutosh80 |
Open an Issue | ๐ Star on GitHub
Ready to show off your coding achievements? Get started with IndShield today! ๐





