Twodoor is an adaptive virtual flashcard tutor written in JQuery, HTML5 & CSS3 & currently deployed as a web application at: https://arthurdamm.com/twodoor/
Written with ❤️ by:
- Scout Curry - Full-Stack Developer
- Arthur Damm ~ LinkedIn ~ @arthurdamm: Sharpening my skills at Holberton School of Software Engineering. I have a lifelong passion for programming with a background in mathematics and a daily meditation practice. Spent the last several years enjoying working as a private tutor and am now excited to practice software wizardry professionally.
- Adaptive Algorithm - we use a custom implementation of the Leitner System, an evidence-based method of spaced-repetition. It serves as a robust way to show you the cards you don’t know more frequently than the ones you do, and staggers how many cards you are working with in the active tag at any given time to keep the information manageable.
- Polished UX - We know that if the learning game is not fun and engaging, no one will want to play it. So we invested a large part of our design and development time into creating an agile, intuitive interface with eye-catching animations that keep the user actively engaged with positive and negative reinforcement.
- Responsive - TwoDoor is designed to display on any screen and is desktop, tablet, and mobile-friendly so you can use it to train or refresh your memory with any device, anytime, anywhere.
- Profiles - Thanks to Firebase, you can build your own decks that will be saved to your personal account.
- Holberton API - If you're a Holberton student with an API key, you can use the new holbie app! Memorize your peer's names and faces from any cohort!
TwoDoor runs entirely on the front-end client-side with no local dependencies. Simply clone this repository and open the main.html with your browser or point your web server's document root at it.
Who's ready to play? The homepage is your access to all of the prebuilt decks. Each one was made for a purpose, to emphasize the wide usage of the app. User-made decks coming soon!
Some fun examples made in the early stages of development to test functionality. Remembering coworkers faces is an excellent use of this app.
Using the app during development, we were getting used to the answers. When this was becoming a factor during tests of the algorithm, The "random" deck was created. the word answer is connected to a random color, so you have to guess. After three minutes, you'll see that you are actually learning them!
Since we are making this app for ourselves as much as for the user, the css trivia deck was fun to create and quiz ourselves on, so we don't forget all the useful info!
Ihe simple yet effective interface provides feedback for each answer through unique animations.
The toolbar has three components: the home logo, timer, and algorithm button. The home logo will take you back to the home page at any point during the session. the timer starts at 3 minutes, and when it reaches zero the summary page is rendered. The algorithm button was implemented to remove the deck staggering, for presentation purposes.
Again, the control has three components: The cancel session button closes the session and renders the summary overlay. the input text is auto-focused when you start the session, and used to type and submit your answer. the next button also submits your answer, for people who arent as comfortable with pressing enter.
Whether you cancel beforehand or play the game until the end of the session, the summary overlay screen will show. Unless you get none of the answers correct during your session, it will display your statistics for the game played. This module will be expanded later, to show progress throughout all of your sessions, once a backend makes persisting data possible. You can keep playing after the summary screen is shown :)
TwoDoor is open to contributions. Please contact the developers before submitting pull requests.
The goal is to make an adaptive flashcard tutoring app that we, as well as any user, will use to help convert information from short-term to long-term memory. The simple process of memorization is a key component to any learning structure. This app was Arthur's vision, as he has been a tutor for 7 years before joining the Holberton curriculum. Scout joined in on the team for project-partnering experience as well as enthusiasm for the potential the product holds. We spent most of the time pair programming the app and had an amazing experience working together. We implemented features as we saw fit, which led to muddled roles throughout development, but led to an overall sense that the app is but an extension of our capabilities.
- Featured Decks: sharing privileges for decks, so that you can send your favorite decks to your freinds, or even a featured section with the highest rated decks on top.
- New Algorithms: The Leitner Box learning algorithm has proven to work well, but new selection algorithms are always good!
- Framework Implementations: Using basic JavaScript, JQuery, HTML and CSS has provided an excellent backbone to add features quickly and easily, but it's now time to implement React or other frameworks to provide a more dynamic and beautiful webpage.
TwoDoor uses just a few basic technologies:
MIT