Team SquareUp
presentSquareUp

Headline imagePreview: Headline image
squareUp Video

squareUp Video

SquareUp - where board gamers click!

SquareUp is a mobile app for Android and iOS that allows board game enthusiasts to connect with each other and find players to join them. For new board gamers without an existing gaming group, finding enough people to play their favourite games with can be a daunting process, so SquareUp aims to allow gamers to find each other in a user-friendly and non-judgemental way.
Users can create events for a particular game and SquareUp will use popular board gaming website BoardGameGeek to auto-populate data about the board game, allowing the user to simply pick the place, date and time, with a deadline for sign-up. Other users can then see the event immediately on a map using their phone's GPS or in a list format, from where they can view details, sign up to attend if there are spaces available, or join a waitlist if not.
Users can build a profile showing which games they would like to play, which they own, and any events they've signed up for. The app also features instant messaging to allow users to better plan their events and build their social network.

The Team

  • Team member imagePreview: Team member image

    Priscilla Chan

  • Team member imagePreview: Team member image

    Rosie Garrett

  • Team member imagePreview: Team member image

    Jonathan Brierley

  • Team member imagePreview: Team member image

    Mohammed Saabir

  • Team member imagePreview: Team member image

    Gilaine Young

  • Team member imagePreview: Team member image

    Josh Rigg

Technologies

Technologies section imagePreview: Technologies section image

We used: React Native, Kitten UI, Cloud Firestore, Firebase Authentication, Expo, Node.js

React Native offered us the ability to develop a cross-platform mobile app, while giving us some familiarity in syntax to React. Using Expo meant we could get started straight away with minimal setup, and Expo Go was an invaluable tool for testing on both platforms without the need for emulators, which were incompatible with some of our functionality eg GPS-enabled mapping. Kitten UI was a late addition to the stack, as we found it had more flexibility to handle some of our app's more ambitious styling than other options we'd considered.
For back end, Firebase ticked several of our boxes in one place. Instant messaging was key to our MVP, so Cloud Firestore's NoSQL database was a good fit for our need for fast access to semi-structured data. Firebase Authentication was also a straightforward choice, giving us easy integration of users with anonymised user documents in Cloud Firestore.

Challenges Faced

During back-end development, we found that Firebase had changed quite significantly in recent updates. Due to this we only had the published documentation and weren't able to rely on community sources for problem solving, making it more difficult to find fixes for errors, which the documentation did not cover. On front end, we found that a number of packages we had intended to use (eg Mapbox and alternative sign-in methods in Firebase Auth) weren’t compatible with the Expo Go sandbox. We spiked this area quite extensively though, so by the time we got to the build phase we had a clear idea of what would work.