Inspiration

The NCSU's WellRec app was a major inspiration for BrickParty. Being able to register for athletic activities is the goal of the WellRec app, but we wanted an app where anybody could create an event and join it.

What it does

In a way, it is similar to other social medias, but it's sole focus it for keeping track of events and whose joined the events. It has a feed of all events posted, and a user is able to follow those events.

How we built it

It was originally planned to be natively developed in Kotlin, but we switched to using Dart and Flutter. Dart is the underlying language for Flutter, which provides the upper level API for creating apps. Firebase was used as the authentication method and database system. This is to reduce the overhead of creating, configuring, and hosting our own backend server.

Challenges we ran into

Originally, we were on the fence between native app development with Kotlin versus using the Flutter framework. After dabbling into Kotlin, it became apparent that while it was a powerful tool, it was quite tricky to get working within a time constraint, so we switched over to Flutter. While at the beginning, Flutter was quite simple, but as the application got bigger, managing views became a problem. A major problem we ran into dealt with async problems as calls interfered with each other. After those problems got sorted out, pulling from Firebase became problematic. Querying Firebase and trying to update the follower count ended up with null pointer exceptions because the program was writing before reading from Firebase leading to nothing being written. This was also solved using async/await. There were other challenges, but those were the main ones.

Accomplishments that we're proud of

  • Being able to create a mobile application utilizing Material Design.
  • Being able to implement our idea in such a short time constraint.

What we learned

  • The Dart language and Flutter framework.
  • Using Firebase as a "backend as a service."

What's next for BrickParty

There are quite a few features missing that would enhanced the app if added. Being able to handle Dates and Times using the native OS's date picker and time picker to set start and end times for events would be one such feature. Adding more settings such as a dark theme and adding a way to search through posts too. Also implementing a better way to fetch posts would be optimal as currently the app fetches all the posts in the database which would slow the host OS down if there are a plethora of posts.

Built With

Share this project:

Updates