North Star

Inspiration

Our inspiration revolved around the Civil Rights movement and abolitionist movement. We then narrowed down our project idea to be the Underground Railroad, as this gave us many possibilities for what app we could make. After we got the basic features, we started coding and thought of the rest as we worked.

What it does

Our app would have allowed the slaves to visit safehouses around the country worry free and reserve spots in safehouses. The user can open the route in Google Maps to get directions and can contact the owner directly by text message or phone. As a bonus, the runaway slave can also reserve multiple spots when traveling in a group.

Furthermore, safehouse owners would be able to easily manage their safehouses by viewing how many expected visitors there are and setting the capacity for the safehouse.

How we built it

We used Flutter, Firebase, Visual Studio Code, Android Studio, Dart, and Github. Using all of these, we were able to make an entire app in 4 days. We all worked on different parts because we are all in different places and working at different times. Our entire app was technically one page - all the different screens came up from the bottom - but we divided our files by screen to make things easier.

Challenges we ran into

Most of the bugs we ran into revolved around asynchronous operations and values returning null because the operation had not finished yet. For example, one challenge we faced was obtaining and using the user's location. We squashed this bug with a Flutter package called geolocator and only showing the map when the location has been found.

We also had trouble displaying the lines of the route between the user's location and the destination safehouse, as well as the markers representing the safehouses. Both of these issues occured because of null references, and were fixed by waiting for the variables to be set before using them.

It was very hard to update the UI once a user makes a change.

Accomplishments that we're proud of

We are proud that we created a functioning app in 4 days, and the progress we made every day with just a 3 person team. We are also proud of being able to efficiently coordinate between three time zones.

What we learned

While relearning how to use Flutter and Dart, we also learned how to exploit the resources provided by Google, Google Maps, and GitHub. Specifically with our app, we learned how to store the user's device's UUID in the app's local storage.

What's next for NorthStar

  • We can create chat rooms for rallies and movements.
  • There can be a warning system where the slaves are notified about incoming slave catchers by those ahead in the line
  • Updating safehouse information in real time
  • Sending push notifications to safehouse owners when someone has reserved

Built With

Share this project:

Updates