Inspiration
When reading the prompt about education tools, we immediately turned towards the aspect of active recall and the forgetting curve. This is the most efficient way of studying, and using technology to implement it would be a convenient way to make it accessible to all students, especially those in low-income areas.
What it does
Our solution, Braincards, is a flashcard application used for learning and memorization, with an emphasis on its spaced repetition feature. Additionally, the application holds a feature to store past flashcards for later use and allow the user to repeatedly practice them.
How we built it
Using c++ and SFML library, we created a queue-based flashcard stack that is displayed in the window. The user can input their questions and answers in the terminal as well as load previous text files. We used various images, fonts, and colors, to create the display for the flashcard. The user can then click on the flashcard window in order to show the answer to the question. After revealing the answer, the user must then press one of the buttons on the bottom right of the screen to indicate whether they thought the question was easy, medium, or hard. The flashcard is then added back into the flashcard stack corresponding to the button that they pressed. Furthermore, the user can import their own text file that already has questions and answers written on it instead of having to write their questions and answers manually into the program. If the user opts for the manual option, their questions and answers are recorded in a text file which they can use for future studying sessions.
Challenges we ran into
We had to deal with a few setbacks, such as learning how to implement and import the SFML library into each of our IDEs. Additionally, when combining our code, it was difficult to ensure our code worked together properly and we had to rearrange our ideas in order to create a working program. When delegating tasks, we had to take into account each of our individual skillsets. We also had trouble learning how to use GitHub for the first time, so it took a considerable amount of research and experimentation.
Accomplishments that we're proud of
We successfully created a working program that combines the frontend design and backend structure to allow users to create their own flashcards. We are proud of the simple user interface that makes the application easy to use. We were able to also allow the user to load a file of their choice to avoid having to repetitively type in question and answers.
What we learned
We learned how to collaborate on GitHub as well as learning how to read, discovered SFML features that we haven't used before, and interpret other people's code. It strengthened our communication skills and taught us to overcome challenges as a team.
What's next for BrainCards
As a beginner friendly application, we would like to eventually create more advanced features for the app, including a home page and different stacks of flashcards. We would also like to integrate the terminal window and the front-end parts of the application. Braincards has the potential to be a downloadable mobile/desktop app that does not require internet to run. Furthermore, because it is a fairly simple application, it can be distributed to simpler appliances such as tablets.
Log in or sign up for Devpost to join the conversation.