In my school (I'm in my final year in medical school), one of the criteria to qualify for an exam is to have not less than 75% of class attendance. This process of taking attendance is done by passing sheets of papers around, which is later collated and stored for future analysis. However, over the years this has proven to be very unreliable. Recently some classmates of mind were disqualified from writing their professional exams because the school claimed they didn't meet up with the cutoff mark. It was later discovered that some of the papers where the student involved wrote their names for attendance got missing, while some others were miscalculated due to human factor. By the time this was discovered the damage had already been done - as many student sank into depression.
So I decided to solve this problem by developing an offline mobile app, I call Ahuva, that will automate the whole process of taking attendance, collating and storing the data and also making necessary analysis.
What it does
The mobile app can be used by anybody and anywhere; In churches, weddings, clubs, schools, etc.
As an event host - Ahuva can help you accurately get the total number of attendees who attended your event easily, conveniently and quickly using your mobile phone. You can also get any other detail from the attendees, like their registration IDs, emails, names etc. You also get to see the history of your events, those who attended and those who were absent.
As an attendee - You can easily show your presence in any meeting, easily and conveniently using your mobile phone and also pass any information as requested by the event organizers at will. You also get to see the history of events you attend and those you missed.
Other functionality includes: Sending personalizes notifications to attendees by the event host. Event host can also link their website and YouTube channel to their registry, so that attendees can get personalized content from them directly.
My target audience are regions with low internet accessibility, as seen in underdeveloped and some developing countries, as other possible alternatives of this app may highly rely on the internet to function.
How I built it
The project was built using Flutter framework and Dart programming language . I used the Bluetooth technology to ensure offline connectivity for the core functionality. And for notification and messaging, I used OneSignal API. I also used YouTube API to enable YouTube connectivity, and WebView API to manage user's website. Firebase database was integrated to manage data where necessary.
Challenges I ran into
Making the app work offline and deciding how to go about it was a MAJOR challenge. Even after deciding to use the bluetooth technology for the offline functionality, implementing it was another challenge, since I knew nothing on how to use the available APIs. Finally, working on this project alongside school work as a medical student was indeed really tasking.
Accomplishments that I am proud of
I'm proud of myself for developing this app in the first place, building an app with this unique functionality makes me so happy.
I’m also proud I was finally able to make the core functionality work offline. Although I couldn’t make the other minor functionalities(like sending notifications) work offline; those areas obviously need internet connectivity to function.
Finally, ones fully launched, I'm so glad my colleagues in school and future generation to come, won't be a victim of misplaced and miscalculated attendance ever again.
What I learned
I learned a lot about bluetooth technology from a developer's point of view, since I had to read a whole lot of articles about the tech.
What's next for Ahuva
I intend to build the iOS version for iPhone users before fully launching. I will also equip the app with other functionalities in the future. And finally turn this into a company (just like Xender).
To download and test the app, click on this link (Android only): https://bit.ly/3RKpbVp