Inspiration
One of our team members shared a story about their father, who had an incredibly busy life managing two kids, a full-time job, and being a part-time student. With no free time to study, he had to get creative. During his three hour daily commute across work and school, he placed his laptop on the passenger seat to play prerecorded audio of study terms and definitions. This method, while innovative, was far from perfect due to the effort required to record and set up the audio, risk of the laptop falling over, and lack of randomness in the study material. Despite these challenges, he barely passed his class and credited his success to this passenger seat study method.
Inspired by this story, we recognized a gap in existing study tools. Most require users to touch a screen, which is impractical when driving, doing chores, or running. That's why we decided to develop a hands-free study tool using today's advanced technology. Our application transforms unused time into productive study sessions, quizzing users and helping them learn without needing to look at or touch a screen. This innovation aims to make studying more accessible for people with hectic schedules, ensuring they can learn anytime, anywhere.
What it does
To use the app, users can load flashcards onto it. The app then prompts a definition and waits for the corresponding term, cycling through all flashcards in this manner. Users can also personalize their profiles, including their name, card study decks, and track their longest usage streak.
How we built it
Android Studio: Integrated development environment designed for building Android apps efficiently with a variety of tools and features. We used this to emulate a smart phone during the development. Flutter: Flutter is a toolkit for building apps for mobile, web, and desktop from one codebase. This allowed us to transfer our code into a program that runs in Andriod Studio Dart: Dart is the programming language used with Flutter to build fast apps. We developed the majority of our app using this language. FlutterTts: FlutterTts is a plugin that lets your app convert text to spoken audio. This was used to reach flashcards to the user. Speech_to_text: speech_to_text is a plugin that lets your app convert spoken words into text. We used this to receive the user's answer to questions
Challenges we ran into
Throughout this project, we gained valuable insights into practical software development. We immersed ourselves in utilizing Flutter, Dart, and Android studio. We had never used these tools prior to this hackathon and had a blast learning their capabilities. This experience allowed us to explore their capabilities in professional software development. Additionally, we learned text-to-speech and speech-to-text functionalities, crucial for the hands-free functionality. By overcoming the challenges associated with learning these technologies, we enhanced our app's functionality and usability, equipping ourselves with valuable skills for future projects.
Accomplishments that we're proud of
During our project, we ventured into many new territories. None of our team members had any prior experience with implementing Text-to-Speech or Speech-to-Text functionalities, and were not familiar with Flutter, the open source framework, and the Dart programming language. This required us to learn the correct implementations from scratch. Despite the initial learning curve, we were able to successfully develop the fundamental functions to properly use the packages. Moreover, we effectively captured the data to be processed for the purposes of the app, demonstrating our ability to adapt and integrate new technologies.
What we learned
Throughout this project, we gained valuable insights into practical software development. We immersed ourselves in utilizing Flutter, Dart, and Android studio. We had never used these tools prior to this hackathon and had a blast learning their capabilities. This experience allowed us to explore their capabilities in professional software development. Additionally, we learned text-to-speech and speech-to-text functionalities, crucial for the hands-free functionality. By overcoming the challenges associated with learning these technologies, we enhanced our app's functionality and usability, equipping ourselves with valuable skills for future projects.
What's next for SpeakAble
To enhance cross-platform usability, we plan to implement a robust database that ensures seamless access to user data across different devices. This will allow users to import flashcards using their computers, and practice them using their phone without losing their progress or study materials, making learning more flexible and accessible. We're also focused on improving the ease of inputting data into the app. Our goal is to simplify the process of adding new flashcards and study decks, enabling users to quickly upload and organize their study materials. Such methods will be standard data sets like csv as well as community-driven data sources, such as Quizlet. This enhancement will streamline the user experience, making it more efficient and user-friendly. In addition to these improvements, we're exploring alternative input methods, such as integrating with AirPods and Apple Watch. This will provide users with more ways to interact, ensuring they can study even more conveniently. These integrations will further support the hands-free approach, allowing users to access study materials through their preferred devices. Finally, we're looking to enhance the gamification aspects of SpeakAble by introducing features like coins and leaderboards. These additions will make the learning experience more engaging and motivating, encouraging users to compete with themselves and others. By incorporating these elements, we aim to make studying not only productive but also enjoyable and rewarding.