Harsimar Singh | simarsingh24
- Organization: FOSSASIA
- Project: Open Event Android
- App Link: Play Store, F-Droid
This summer we worked on Fossasia's Open Event Android Project. Our goal was to create a generalized events App and publish it on play store. Which we successfully accomplished, Open Event Android can be found on playstore with the name of EventYay Attendee.
With EventYay Attendee, you can browse through different events happening nearby or all over the world. You can get detailed information about the events and can even buy event tickets. The app also offers other cool features such as similar events and easy check-in using QR code. If that’s not enough, the app also allows you to favorite different events and all of them can be accessed from favorite section.
Eventyay Attendee App provides features for users like:-
- All events by the organizers can be viewed
- Functionality to filter out events by date, time, location and event name is present.
- Users can buy tickets and register as attendees for any event from the App.
- All important event details such as location, date and timing of the event can be viewed.
- Users will be able to view all the tickets bought for an event.
- Easy check-in using QR code for Ticket
- Users can view similar events in the App
- Users have also the privilege to favorite events in the App
The codebase of Open Event Android is written in Kotlin and it is following the MVVM architecture. We are using Retrofit Library for making network request, RxJava for asynchornous call and room for local caching.
- Got in touch with the mentor and discussed about Project goals
- Read Fossasia's coding conventions and spend time understanding the codebase
- I started with Code Refactoring which helped me understanding the modules better
- Added the feature which allowed user to submit feedback of an event
- Fixed memory leaks in different Activities and Fragments
- Deployed my instance of Open Event Server and Open Event Fronted on Heroku
- Started working on generalized Events Application
- Added Events fragment
- Also built a bottom navigation bar for switching between different fragments
- Worked on Event Details screen which gives detailed information of selected event
- Implemented local caching of users into room database
- Worked on code refactoring and bug fixes
- Added utility class and moved functions in it
- Added favorite event functionality
- Built separate fragment for favorite events under a user
- Added Attendee Object and API methods for attendee
- Mapped Events to load from Database
- Improved the UI of ticket Fragment and fixed bugs related to log out
- Added functionality allowing user to select multiple tickets
- Minor UI enhancements and bug fixes
- Added functionality to create an order
- Removed payment methods for free events
- Updated APK generate script to save APKs from both master and development branch
- Added loading of user profile into database whenever used sign up or login
- Made country hidden for free events
- Made UI enhancements at tickets screen (added spinners for quantity)
- Deleted Attendees on order failure
- Updated Attendee Fragment to allow user to enter multiple attendee details
- Updated Order placing method to take multiple attendee data
- Added App icon and updated App name for playstore release
- Added QR code for tickets, to allow easy check-in
- Added functionality to continue from where left when redirected to login fragment
- Updated attendee fragment for single ticket
- Contributions in Open Event Android
- Contributions in Open Event Droid Gen
- Contributions in Open Event General
- Issues (Opened - Open Event Android)
- Issues (Opened - Open Event General)
- Issues (Opened - Open Event Server)
- Issues (Opened - Open Event Droid Gen)
Ticket Detail Screen |
Multiple Attendee Details |
Ticket Selector Section |
Event Detail Section |
Favorite Event Section |
Tickes Under User section |
Search Event Section |
App Settings |
Edit Profile Section |