Website link : 🔗 ShECURE
Unsafe streets limits women’s choices in life forcing them to miss those important opportunities and moments where they can feel proud,confident and empowered. While many initiatives have been taken by the Ministry of Women and Child development like installation of CCTV monitors in railways stations with 24*7 monitoring , equipping phones with emergency helpline numbers(181) and panic buttons etc. Our contribution in circumventing this problem is through ShECURE,a web-application which behaves like a personal safety map for women
The user enters the source and destination, the application extracts different possible routes using the Mapbox Directions API and for each route, it uses reverse geocoding API to extract all the streets names in a particular route. For each street lying in the route, the k nearest neighbours model is used to predict the safety score of the street lying between 1- 4 (4 being highly safe and 1 being unsafe). Data used for the value of different factors specified were collected using web-scraping. Safety of a route is calculated by taking an average of all the safety scores from the streets lying in the route. The application then shows the safety score of each route and mark the safest route with green. It is the user’s choice to choose her path accordingly.
The application takes the current position of the user by using the Mapbox geolocation API. For the returned longitude and latitude, all the streets and places lying within the radius of 500m are extracted using the Mapbox Geocoding API. The safety scores of all these places are predicted using the machine learning model on taking the average of all the safety scores of the region. If the safety score is below a certain threshold an emergency SOS is activated and the user is alerted. We also depict the safety of the region by marking it green (safe) / red (unsafe).
We used feedback form to get few details like lighting that are not originally extracted through public datasets. User is asked to enter a rating and remark, sentiment analysis is done on the remark and a rating between 1-5 (1 suggesting unsafe and 5 suggesting safe) is assigned to it,an average of this score and the rating entered by user is taken, and if it's above a certain threshold (which we have taken to be 3) then the route is considered to be safe by user. This score isn't reflected in safety score, it's shown separately as the 'percentage of users who found this route safe'.
Fork or clone this repo, then run the following commands in sequence
- move to the directory (cd path_to_directory)
- make .env file in directory and write
MONGO_URI = your_mongo_URI_to_connect_node_app
REACT_APP_TOKEN = your_MAPBOX_API_ACCESS_KEY - npm install This will install all the node modules for server files
- cd client Moving to client folder
- npm install this will install all the node modules for client directory
- cd ..
- npm run dev This command will run both back-end and front-end simultaneously
We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer