Protect Multitool is dedicated to empowering individuals by providing innovative safety solutions that integrate seamlessly into daily life. Our mission is to leverage technology to create discreet, accessible, and effective tools that enhance personal security, raise awareness about human trafficking and modern slavery, and foster a safer world for all.
Visit Deployed Site on Heroku!
- UXD (User Experience Design)
- Features
- Safety Transit
- Kicky Frog and Fake Games
- Tech Stack
- Installation & Setup Guide
- Contribution Guidelines
- API Documentation
- Security Considerations
- Testing & Debugging
- Deployment Guide
- License & Legal Considerations
- Team
- Temp
Some color palette details:
- Primary: #4338CA
- Success: #10B981
- Alert: #EF4444
- Warning: #F59E0B
The goal is to create a seamless and intuitive user experience that ensures easy navigation, high accessibility, and clear functionality. The design will include:
- Responsive Design: Optimized for desktop, tablet, and mobile devices.
- Accessibility: WCAG 2.1 compliance to ensure the platform is usable by all individuals, including those with disabilities.
- User Flow: Clear and concise navigation paths for different user personas.
- Feedback Mechanisms: Interactive alerts, success messages, and notifications.
-
Safety Transit Features:
- Timed check-ins using Django’s
DateTimeFieldto ensure user safety. - Automated notifications if check-ins are missed.
- Timed check-ins using Django’s
-
User Management:
- Registration and Login.
- Profile management for updating emergency contacts.
- Two-factor authentication for secure access.
-
Interactive Tools:
- Google Maps API integration for route planning.
- SMS notifications via Twilio.
- Task management features using Celery.
-
Notifications:
- Real-time alerts for critical updates.
- Push notifications for missed check-ins or safety warnings.
-
Automated WhatsApp message event:
- Once triggered using a hidden feature like a game, this event will trigger an automated message to be sent via WhatsApp to the user's set emergency contacts.
- Emergency contacts will be set via the user's account, using PostgreSQL and Django all auth.
- Messaging will be sent using MessageBird API.
- Message will be sent via WhatsApp and is currently generic for testing purposes. Messages include user name, contact name, location (if user allows us to access their location) and in specific cases a URL and Secret key for accessing user routes.
The Safety Transit feature functions as a PIN-protected dead man's switch that ensures user safety while in transit.
-
How It Works:
- The user sets up a journey by inputting their origin, destination, and estimated travel time.
- They receive periodic prompts to enter their PIN to confirm they are safe.
- If the user does not enter their PIN within the allotted timeframe, an automated distress signal is sent to their designated emergency contact.
- The distress signal includes the user's last known location, journey details, and any additional safety information.
-
Key Features:
- Customizable Timeframes: Users can set the check-in frequency based on travel duration.
- Silent Alarm Option: If the user is in danger and cannot safely enter their PIN, they can enter an alternative code to send an alert silently.
- GPS Integration: Automatically tracks the user's journey and updates emergency contacts on progress.
- Failsafe Mechanism: If internet or GPS connectivity is lost, the system attempts to send a final update with the last known location.
To provide a stealth distress signal, the platform includes fake games like Kicky Frog, designed to help users discreetly trigger silent alarms.
-
How It Works:
- The user opens the fake game, which looks like an ordinary mobile game (e.g., a simple Flappy Bird-style game).
- If the user fails on the first obstacle (deliberately or due to distress), the system triggers a silent alarm.
- The silent alarm sends a distress message to the user's emergency contact, along with location data if available.
-
Key Features:
- Disguised Interface: Looks like a real game to avoid raising suspicion.
- Customizable Triggers: Users can define multiple failure conditions to trigger the alarm.
- Fake Chat Option: A built-in chat window that appears real but can be used to send pre-set distress messages.
- Stealth Activation: Ensures a way to seek help without alerting potential threats.
- GPS-Enabled Alerts: If enabled, the distress signal includes the user's location.
-
Frontend:
- HTML, CSS, JavaScript.
- Responsive design frameworks (e.g., Bootstrap or TailwindCSS).
-
Backend:
- Django – for its robust ORM and built-in features.
- Celery – for task scheduling and asynchronous processing.
-
APIs and Integrations:
- Google Maps API – for route planning.
- Twilio – for SMS notifications.
-
Database:
- PostgreSQL – for reliable and scalable data storage.
-
Hosting and Deployment:
- AWS or Heroku – for hosting the application.
To set up the project locally, follow these steps:
- Clone the repository:
git clone https://github.com/your-repo/protect-multitool.git
- Navigate into the project directory:
cd protect-multitool - Install dependencies:
pip install -r requirements.txt
- Set up environment variables in a
.envfile. - Run migrations:
python manage.py migrate
- Start the development server:
python manage.py runserver
- Follow the branching model: feature branches should be prefixed with
feature/, and bug fixes withfix/. - Submit pull requests with detailed descriptions and relevant issue links.
- Follow PEP 8 style guidelines for Python and adhere to best practices for frontend code.
- Authentication API: Login, registration, and user management.
- Safety Transit API: Creating and managing user journeys.
- Notification API: Sending alerts via SMS, email, and WhatsApp.
- API documentation is auto-generated with Swagger.
- Encrypted communications using HTTPS.
- Secure API endpoints with JWT authentication.
- Rate limiting to prevent abuse.
- Run tests with:
pytest
- Use logging and Django Debug Toolbar for debugging.
- The project is deployed using Heroku.
- CI/CD pipeline setup with GitHub Actions.
- Database hosted on AWS RDS.
- This project is licensed under the MIT License.
- If using third-party APIs, ensure compliance with their terms of service.
- Scrum Leader
- Repo Manager
- Presentations
- Javascript / Game Developer
Enjoy creativity in all its forms. As someone new to development, I find immense satisfaction in bringing ideas to life and seeing the final project take shape. Through this experience, I’ve come to appreciate the value of strong leadership and proactive teamwork. Also, learnt some of Githubs true strengths and weakness.
I'm a 27 year old half digital nomad constantly moving between Ireland, Holland and Spain with a military background before working in Tech Support and studying coding from last year with Code Institute. The experience was awesome, I learnt a lot about working on a project that is backend heavy and had a lot of fun getting creative and implementing solutions. -Back-end Engineer -MessageBird/WhatsApp wizard
This Hackathon marks my first experience in a collaborative coding environment. Starting the course with no prior background in tech or coding, I am enjoying learning programming languages and building web applications. This project has been an opportunity for me to grow both technically and collaboratively - I’ve gained hands-on experience working in a team, contributing to repositories, and embracing effective teamwork practices. I’ve learned a lot from my teammates, including advice on best practices and exploring new technologies, which have broadened my perspective and skills.
Hi, I am Farha. I have worked in embedded development for several years but now embracing a new journey in full stack SW development. For me Hackathon is an excellent platform to sharpen skills and gather new experience. In this Hackathon we have worked in a very Dynamic and well structured team. Our Project goals to help people in their emergency situation. I am very happy to be a part of this project. Hope we can help people to assure their safety.
Participating in the hackathon has been an incredible experience. Collaborating with an amazing team allowed me to gain valuable insights into real-world software development challenges. As a junior developer, it was a fantastic opportunity to apply my skills in a practical setting, learn from more experienced teammates. The experience has greatly enhanced my understanding of teamwork, communication, and the fast-paced nature of development, making it an invaluable step in my growth as a developer.)












