An app designed to supplement Hebrew language learning by providing a simple yet engaging way to review Hebrew vocabulary.
The purpose of this app is to help those learning the Hebrew language. It uses direct input for review questions and impliments spaced repitition.
View the live website here: Rabbi-Rabbit
-
React
-
Javascript
-
CSS
-
Validation with Yup
-
Tests with react testing library (comming soon)
A list of the features needed for a minimum viable product across the enitre project: desktop frontend, mobile native frontend, and the backend server.
- Auth functionality
- Sign up:
- On first signup, a new user is crated with a level of 1, the first set of lessons, and email and hashed password
- Sign in:
- On sucessful signup / signin redirects to dashboard and changes nav items
- Sign out:
- Signing out redirects to main landing page, changing nav items.
- Password reset:
- If a user has forgotten their password, they can click the reset password button. This will send a request to the server which will send an email to the user with a pin needed to reset the password. If the correct pin, email, and password are provided, the password is reset and the user is redirected to login.
- Sign up:
- Lessons button with count
- Reviews button with count
- Displays next available review date and time
- Mastery progress bar for current level
- Lessons display Hebrew, Hebrew with Nikkud, pronounciation guide, and meaining. They may be a single word or a phrase.
- Viewing lessons adds them to the reviews array with a level of 1 "New" and are immediately avaiable for review
- Forward and backward navigation of lessons
- New lessons are unlocked when the current set has 80% of items at master rank 3 or higher
- New lessons are added to any existing lessons list
- Randomized available reviews
- Direct input for answering questions
- Hebrew "keyboard" for inputing reading
- Detects language, enforces correct language
- Provides feedback on correct or incorrect answer given and shows correct answer
- User must provide correct meaning and reading for each vocab item for it to rank up
- If any item is answered incorrectly, it is ranked down unless it is at the bottom rank already
- When an item has been reviewed, it is assigned a next review date using a spaced repitition formula depending on the new rank of the item
- Going through all reviews or clicking the dashboard button submits answered vocab items
- Vocab viewed by level
- Displays only vocab unklocked / reviewed by user
- Displays Hebrew, with nikkud, meaining, pronunciation, level, and mastery rank
- Checkbox to display nikkud on reviews
- Checkbox for displaying pronunciation on reviews
- Settings are saved to local storage
- Reset Learning Progress
- Delete Account
A list of the features planned for future release across the enitre project: desktop frontend, mobile native frontend, and the backend server.
- Listen to the vocab spoken by a native speaker.
- Charge a monthly fee for access to app beyond the first three levels.