TrainHer: Your Personal Self-Defense Companion
Inspiration
The rising concerns about personal safety, especially among women, inspired us to create TrainHer. We wanted to empower individuals with an app that not only educates but also equips them with the tools to handle unsafe situations effectively. Our goal was to create a solution that is accessible, interactive, and focused on prevention through self-defense training.
What it does
TrainHer is an all-in-one self-defense app that offers:
- Interactive Tutorials: Step-by-step self-defense techniques with video demonstrations.
- Personalized Learning Paths: Women can choose what they want to learn based on their specific needs and preferences.
- Emergency Alert System: One-tap SOS feature to alert pre-selected contacts with your live location.
- Safety Tips: A curated list of personal safety guidelines for various real-life scenarios.
- Practice Mode: AI-powered feedback system using your device's camera to guide your technique and improve your skills.
- Progress Tracking: Personalized dashboards to monitor training progress over time.
- Personal Profiles: Each user has their own profile to track achievements and receive personalized feedback.
How we built it
- Frontend: Built using React to provide a dynamic and responsive user interface.
- Backend: Developed with Python to handle app logic, data processing, and seamless communication with the database.
- AI Features: Utilized TensorFlow Lite for pose detection to deliver real-time feedback on self-defense techniques.
- Database and Authentication: Integrated with Firebase for real-time data storage, user authentication, and secure management of personal profiles.
- Emergency Features: Leveraged GPS services and Twilio API to implement the SOS alert system and live location tracking.
- Design: Created intuitive UI/UX designs using Figma, ensuring ease of use across all devices.
Challenges we ran into
- Pose Detection Accuracy: Fine-tuning the AI model for accurate feedback was challenging due to variations in user movements.
- Custom Learning Paths: Creating a system where users could select and tailor their training required significant backend logic.
- Real-Time Alerts: Ensuring reliability of live location tracking and SOS alerts, especially in areas with low connectivity.
- Time Constraints: Balancing multiple features and ensuring they worked seamlessly within the timeframe required efficient teamwork.
- User Testing: Simulating real-life scenarios to test the emergency features posed logistical and technical challenges.
Accomplishments that we're proud of
- Successfully integrating a progress tracker and personal profile system to make the app engaging and user-focused.
- Developing a fully functional SOS feature with live location tracking and instant notifications.
- Building a dynamic feedback system that provides real-time guidance and helps users improve their self-defense techniques.
- Designing a user-friendly interface that is accessible to users of all technical backgrounds.
What we learned
- How to integrate multiple technologies, including React, Python, and TensorFlow Lite, into a cohesive app.
- The importance of user-focused design to enhance engagement and usability.
- Effective strategies for prioritizing features and resolving technical challenges under tight deadlines.
- The value of combining AI with interactive features to provide a more personalized experience.
What's next for TrainHer
- Advanced Training Modules: Adding more in-depth self-defense techniques and personalized learning paths.
- Wearable Integration: Enabling integration with smartwatches for faster SOS activation.
- Community Features: Introducing a platform where users can share experiences, tips, and encouragement.
- Multi-Language Support: Expanding accessibility by supporting multiple languages.
- Offline Functionality: Allowing training modules and emergency features to work without an internet connection.
- Gamification: Adding badges, rewards, and milestones to make learning more engaging.
Log in or sign up for Devpost to join the conversation.