Check the app your yourself by simply downloading an apk file and installing it on your android device: https://github.com/BimberTeam/BimberApp/releases/download/1.0/app.apk
Jakub Myśliwiec |
Jakub Perżyło |
Sebastian Kuśnierz |
Have you ever felt the need to met new peoples that love the same type of alcohol as you? Peoples, that like to party the exact same way as you? Now Bimber makes meeting those people possible.
Bimber is a tinder-like app in which you can instead of searching for love search for parties and drinking. You can discover new people by swiping them just like in Tinder but what's different is when you match with another person, you form a party group. It means that other thirsty souls can discover you as a group so more people can party together. You can accept or reject potential party-goers in a dedicated view, it works like voting - if 50% of the group members accept the candidate, he's in. You can add people you discovered to your friends' list with whom you can later create a new group or simply invite them to an existing group. We also implemented a well-known feature you may recall from Snapchat - a localization map. It helps users to see where they currently are so they can meet together. Just like in Snapchat stories, each group exists for a limited time. Make sure you get in touch with people you like as after 4 days all group history will be gone forever.
During working on that project we learned a lot about team cooperation. We often work simultaneously on the same code base so we have to develop good task management. Luckily GitHub had a great tool for that (Projects). As we worked in a team, we learned how important it is to write clean and readable code, so other team members could easily understand it. At the end it turned out that creating app with team is way more exciting cause you can discuss every ideas together and work out the best solution.
Full description of backend technologies is available here
To develop a mobile application we went for the multiplatform framework Flutter. As our team created flutter apps before, we tried to focus on developing some more complex views. During creating UI we tried to imitate Tinder views, to make our app as similar as possible. However as our app introduces features that aren't available on Tinder, some views are completely our ideas. For state management, we went for the BLoC pattern which is great to separate business logic from presentation. Together with our team, we decided to use GraphQL to develop an API. So to communicate with our backend server we went for graphql_flutter library.
Right now backend server is deployed on DigitalOcean so all you have to do to start using app is to download it from here.
If you want to test the app locally here is quick guide:
Make sure you have installed:
- Docker
- Docker-compose
- Flutter
Then just copy and paste the following commands to run server:
git clone [email protected]:BimberTeam/Bimber.git
cd Bimber
docker-compose up
Then you have to modify server url in mobile app. Firstly clone repository using the following command:
git clone [email protected]:BimberTeam/BimberApp.git
Next open .env_prod file and edit it replacing DigitalOcean server ip with your own ip. Then you can build and install your app on your mobile device using the following commands:
cd BimberApp/bimber
flutter build apk --split-per-abi
flutter install
Here you can see demo of most features our app offers