Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/goldenchrysus/karutasrs
Rails and Ember spaced repetition system for memorizing the Ogura Hyakunin Isshu or the one hundred poets/poems used in kyogi karuta.
https://github.com/goldenchrysus/karutasrs
japanese-hundred-poems japanese-hundred-poets karuta kyogi-karuta ogura-hyakunin-isshu spaced-repetition spaced-repetition-system
Last synced: 19 days ago
JSON representation
Rails and Ember spaced repetition system for memorizing the Ogura Hyakunin Isshu or the one hundred poets/poems used in kyogi karuta.
- Host: GitHub
- URL: https://github.com/goldenchrysus/karutasrs
- Owner: GoldenChrysus
- License: gpl-3.0
- Created: 2019-09-19T18:24:51.000Z (about 5 years ago)
- Default Branch: bleeding-edge
- Last Pushed: 2023-03-08T20:24:41.000Z (over 1 year ago)
- Last Synced: 2024-10-11T00:17:15.032Z (about 1 month ago)
- Topics: japanese-hundred-poems, japanese-hundred-poets, karuta, kyogi-karuta, ogura-hyakunin-isshu, spaced-repetition, spaced-repetition-system
- Language: JavaScript
- Homepage:
- Size: 60.7 MB
- Stars: 13
- Watchers: 3
- Forks: 3
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# [Karuta SRS](https://karutasrs.com/)
Rails and Ember spaced repetition system for memorizing the Ogura Hyakunin Isshu or the one hundred poets/poems used in kyogi karuta.[![GitHub](https://img.shields.io/github/license/GoldenChrysus/KarutaSRS.svg)](https://github.com/GoldenChrysus/KarutaSRS/blob/master/LICENSE)
![GitHub package.json version](https://img.shields.io/github/package-json/v/GoldenChrysus/KarutaSRS.svg)
[![KarutaSRS.com](https://img.shields.io/badge/web-KarutaSRS.com-blueviolet)](https://karutasrs.com/)
![GitHub last commit (branch)](https://img.shields.io/github/last-commit/GoldenChrysus/KarutaSRS/master.svg)
![GitHub package.json dynamic](https://img.shields.io/github/package-json/keywords/GoldenChrysus/KarutaSRS.svg)## Official Build
You can use all of the features of Karuta SRS at https://karutasrs.com/.
## To-Do List
- ☑️ Grabber card component
- ☑️ Highlight grabber key characters based on state (learning: blue, review correct: lime green, review incorrect: light red)
- ☑️ Fade in characters when character is added (for typing answers in review)
- ☑️ Lesson component
- ☑️ Info grid (poem info and grabber card)
- ☑️ First verse
- ☑️ Kimariji
- ☑️ 2nd verse key characters
- ☑️ Reading audio
- ☑️ Poem background info
- ☑️ Poem translations
- ☑️ Lesson carousel component
- ☑️ Sliding lesson components
- ☑️ Lesson selector component
- ☑️ Indicate complete lesson
- ☑️ Show button to lesson review when complete
- ☑️ Review component
- ☑️ Hiragana input below grabber
- ☑️ Play reading audio for grabber reviews
- ☑️ Randomize review queue
- ☑️ User's overall queue should be split into segments to ensure related items are fairly close together
- ☑️ Each review queue segment should be a continuous 20 items for 10 poems (i.e. grabber and kimariji for each poem)
- ☑️ After an item leaves the queue (due to correct answer), another poem from the total queue should be added to the segment
- ☑️ Repeat until total queue is empty or user ends the session
- ☑️ A review consists of a kimariji review and a grabber review
- ☑️ Each review portion should also be randomized
- ☑️ Prompt for kimariji
- ☑️ Show complete grabber card (but no highlighting)
- ☑️ Kimariji portion of review is complete if entered characters exactly match kimariji
- ☑️ Prompt for grabber key characters
- ☑️ Empty grabber card that fills out (or removes) characters as the user types their answer
- ☑️ Highlight right/wrong characters after user presses enter
- ☑️ Grabber portion of review is complete as long as key characters are correct (even if other characters are wrong)
- ☑️ Track when review is complete
- ☑️ For lesson reviews, create a learned item when the review is complete
- ☑️ For regular reviews, post the number of wrong answers to API to update the learned item
- ☑️ Session and security
- ☑️ User is assigned a bearer token upon creation
- ☑️ Relevant user data (id, bearer) should be stored as session data when ember-simple-auth completes, and user should redirect to dashboard
- ☑️ When user logs in
- ☑️ When user registers
- ☑️ All calls to the API should include the current user's bearer in the header
- ☑️ API call should be rejected if the relevant user for the called item does not match the bearer provided
- ☑️ Calls to learned-items should be rejected if the owner of the learned item doesn't match the provided bearer
- ☑️ Calls to users should be rejected if the fetched user's bearer doesn't match the provided bearer
- ☑️ Also applies to custom controller methods such as those that build the lesson/review queues; these need an AJAX prefilter as the calls are not routed through Ember's adapter
- ❌ User stats
- ☑️ Dashboard stats
- ☑️ Next review time
- ☑️ Number of items per level
- ☑️ Best items (by correct answer rate)
- ☑️ Worst items (by incorrect answer rate)
- ❌ Review index stats
- ☑️ Total number of reviews completed (1 poem = 1 review)
- ☑️ Kimariji correct/incorrect percent
- ☑️ 2nd verse correct/incorrect percent
- ☑️ Performance (correct answer rate) by kimariji length
- ☑️ Performance ("") by 2nd verse answer length
- ☑️ Average correct response delay
- ☑️ Average response delay
- ❌ Ability to select time range
- ❌ Unlimited time range will show correct answer rate over time## License
[GNU General Public License v3.0 only](/LICENSE)## Copyright
Copyright (C) 2019-2020, Patrick Golden. All rights reserved.Copyrights licensed under GNU General Public License v3.0 only.
See the accompanying [LICENSE](/LICENSE) file for terms.