We were inspired to fix the issues in modern day society and we seeked to help the justice system and reduce crime rates. We believe the app we have constructed during the duration of this hackathon will help up reach our goal.
What it does
Vigilate allows you to report any suspicious activity going on in the area. This activity is then plotted on the map allowing others to see what suspicious activity is going on and where. If activity in one are starts rising, the government official version of the app is alerted, allowing police officers to arrive at the area. If the officer chooses to alarm everyone at that location, they press the alert button, this alerts everyone at that same location by chiming their phone and sending them a notification. If the situation is in dire need of everyone attention, then the officer can choose to alarm everyone's phones with a loud recognizable sound. They are also prompted with instruction on what steps to take to safely get around whatever the threatening situation may be. Now you may be thinking, why not just simply call the police?
How we built it
We built Vigilate using a popular and rising App Development kit called Flutter. Using this framework and the dart coding languages we were able to construct this amazing app using many flutter libraries. There are plenty of features we built in. We connected all the backend to an online database from google called Firebase. All of our data is stored in Firebase, for example at what time the a suspicious activity is reported, the situation description, and the coordinates as well. We took advantage of the databases abilities and we implemented live changes with the location plotting. As demonstrated in the video, when a new activity is reported, the point gets plotted on the map in real time. This was done using an On change snapshot listener. We used a couple of flutter packages as well in order to get the hardware functionalities of the device working. We used a plugin called flutter assets player in order to play the loud chime sound when there is an alert. We also used another plugin called the flutter torch, which we used to alert user by turning on ther flashlight. We made sure to get the most of the users device when using the app.
Challenges we ran into
Some challenges we ran into were gradle errors when trying to play the loud chime to alert users. We solved this by researching in depth on how the package worked and managed to get it to work. Another frustrating challenge we ran into was our entire database getting disconnected. Because of on simple error in one file, flutter outputted an error displaying that our app was disconnected from fire-store.
Accomplishments that we're proud of
Some accomplishments that got us on our feet was getting the hardware functionalities to work. We managed to learn how to use the plugins and got the flashlight and the sound to turn on when the user is alerted. Another accomplishment that we are proud of is the real-time updates when suspicious activity is reported. This allows quick and immediate updates for users using our app.
What we learned
For our team is has been a while since we had worked with the Flutter App development framework. We got a good refresh and learned a lot of cool new features and updates with the software. One of our teammates was new to flutter and we managed to teach him how to use it and how it works.
What's next for Vigilate
Vigilate is a perfect app to solve some of today's modern problems. The team believes it has potential and we will continue developing features we believe will be crucial towards accomplishing our goal.