A mobile app for the University of Wisconsin's SAFEwalk service on campus.
Required Repos:
- Mobile app (this repo)
- APIs
- Socket Server
NOTE: This repository only contains the frontend (i.e. the mobile app), database is deployed to Azure
The safety of our students and our faculty is paramount. With SAFEwalk, a free walking companionship service, students and staff can safely get from one place to another. However, currently to schedule a SAFEwalk, users must call or text a phone number to speak with a dispatcher. The dispatcher has to first determine eligibility for a SAFEwalk by getting information manually, including one’s name, phone number, and location before dispatching a team over. This cumbersome exchange of information can often take over a minute. That long minute is especially concerning when considering that someone requiring a SAFEwalk may be in immediate need of it. Furthermore, the time and personnel to receive the calls are also costly. The current solution is just not scalable and efficient enough when time is a factor of safety.
This application will automate the scheduling process. Users will be able to schedule SAFEwalks with very little latency as the middle men, the dispatcher, is removed from the process, and most eligibility and security checks will be done upon initial account creation. This will cut down scheduling time to under ten seconds. With the use of live geolocation tracking of the other party and messaging, there will also be better transparency and communication between users and SAFEwalkers.
Users can:
- Choose walk start location and destination
- Add requests
- Track live location of SAFEwalker
- See ETA of SAFEwalker to user location
- Create account & update profile
SAFEwalkers can:
- View walk requests ordered by time
- Accept/Deny/Cancel walk request
- Update profile
In order to run on your machine, you will need to run two applications on 2 separate command lines. Here's how you would do it:
- Clone the SAFEwalk-backend repo:
git clone https://github.com/justinztan11/SAFEwalk-backend- Checkout the iteration-3 branch:
git checkout iteration-3-
Make sure to have
nodeandyarn/npminstalled. -
Install
nodemonglobally:
npm install -g nodemon- Install packages:
yarn # or npm install- Run the backend:
nodemon index.js- Clone this repo on your machine:
git clone https://github.com/mujahidfa/SAFEwalk-mobile- Checkout the
iteration-3branch:
git checkout iteration-3- Install the Expo CLI globally
npm install -g expo-cli- Install packages:
yarn # or npm install-
Go to
/contexts/socket.jsand change the IP address according to your local IP address. -
Finally, run the app:
expo start #or yarn start- Scan Expo QR Code through the Expo App (or run on an Android/ios emulator).
To run tests, enter the following command:
yarn testThis app is submission for University of Wisconsin-Madison's CS 506 - Software Engineering for Spring 2020 semester. Teammates are Katie Bajkowski, Alex Deuman, Yoon Cho, Tadao Shimura, Justin Tan and Mujahid Anuar. At the time of the submission, all are students at the University of Wisconsin-Madison.