Inspiration

As the federal election approaches, we wanted to develop an app that could bridge the gap between politicians and governments, and its citizens. In a time where people seem to become more and more divided, we felt that Politi-Go could provide a way to stay informed and engaged in not only federal politics but the government that is close to home.

What it does

Politi-Go is an app that has many features and functionalities relating to elections and political topics. The user can browse through a catalog of upcoming events with each hyperlinked to the respective Party’s event page. The app also contains a Twitter feed with credible sources regarding the election, whether it is news from Elections Canada or updates from your MP. Additionally, users are provided with the elections general info home tab containing common FAQs.

Another feature offers information about your local MP and nearest election office. After clicking the button on the top, the user will be asked to share their location. Once permitted, we use the Represent.opennorth API which matches the user’s geolocation to their local MPs and nearest election office, displaying the distance on the screen. Furthermore, the user can access general information about their MPs and their Twitter feed through the map marker.

Lastly, if the user chooses to not give consent for location sharing, they have the alternative of searching for their local MP through city or region.

How we built it

We used the React library and React Native framework to create a multiplatform app, which had multiple pages and functionalities. Using React Navigation, we created a bottom navbar along with multiple screens, such as a home page with a countdown, a Twitter feed, an informational tab for the general election, a geolocation tracker and finally a database search for MPs based on user's location. We found a database of MPs in Ontario and parsed data in a way that could be visualized and filtered. The geolocation tracker required data from several APIs, with the usage of Apple Maps, requested for permission of the user's location. We also had data of nearby ballot offices, which were pinned on the map, along with the local MP locations. The information and the new events on the home page were all pulled from sources on the Internet, as well as the Twitter feed.

Challenges we ran into

Parsing HTML is difficult. Geolocation is hard. React Native can be weird. APIs don't do what you want them to do. Installing packages was never fun.

Accomplishments that we're proud of

Helen is proud of learning React Native and getting the geolocation API to work. Ivy is not proud of her phone's ability to handle Politi-Go but is proud of her increased Python knowledge to provide data. Joyce is also proud of learning React Native and teaching the whole team how to take wing into the sky.

What we learned

We learned that building an app requires many downloads from libraries and packages. 5000+ staged commits.

What's next for Politi-Go

We hope to implement more features into the app such as a smoother user interface and creating saved profiles for the user. The social media feed is also something we want to integrate/embed into the app properly.

Built With

Share this project:

Updates