Inspiration

The City of Calgary is rich with historical landmarks that most Calgarians cluelessly walk past every day. Cultural history is not necessarily at the top of mind when most think of Calgary, and it's a shame. Many Calgarians do not feel connected to the city as there is a lack of a sense of community, and new Calgarians often struggle with the lack of community. We were inspired to build this app to not only help tourists enjoy the city with ease, but also to help all Calgarians to better understand and feel more connected to our heritage. This will develop loving and long-lasting communities all over Calgary and improve physical and mental health through fun exploration and adventure.

What it does

This app features all of the historical sites around the city, encouraging users to explore the city by featuring a 'Site of the Day' to visit, a list view of all the sites, and a map view. Clicking into the site will give you the historical background of the location.

How we built it

We built our app in react native to take advantage cross-platform deployment. This allows us to reach as many Calgarians as possible regardless of their platform. We used data from the City of Calgary's open data sets, and put them on a mongoDB database. We built a restful API in Rust using the rocket framework which allowed our app to seamlessly query mongo. The web server runs on a Google cloud instance and has a full domain name and SSL certification. That allows us to query mongo through HTTPS efficiently and safely.

Challenges we ran into

We realized half-way through that react did not have good capabilities to develop mobile applications. So we had to change up our approach to react native, which was more familiar with our team.

Accomplishments that we're proud of

We are very proud of the fact we built a server and integrated a database with a mobile app, as well as integrating google maps with the app.

What we learned

We learned how to use mongoDB and how to integrate a webserver with a mobile app. We also learned how react native differs from react, and how react native's components are designed to help mobile development, while react is mostly for traditional websites.

What's next for DiscoverYYC

A future version of this app would be partenered with official sites in Calgary such as Heritage Park and Calgary Zoo, and each real life visit to a free historic site would allow the user to earn towards free or discounted passes to these sites.

Share this project:

Updates