{"id":22457680,"url":"https://github.com/dankimio/acts_as_learnable","last_synced_at":"2025-08-02T03:32:48.845Z","repository":{"id":28411799,"uuid":"31926275","full_name":"dankimio/acts_as_learnable","owner":"dankimio","description":"A Ruby gem to create flashcards in your app","archived":false,"fork":false,"pushed_at":"2022-07-08T23:54:13.000Z","size":23,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-03T01:09:19.433Z","etag":null,"topics":["flashcards","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dankimio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-09T22:32:52.000Z","updated_at":"2024-04-05T14:48:19.000Z","dependencies_parsed_at":"2022-09-25T04:23:02.879Z","dependency_job_id":null,"html_url":"https://github.com/dankimio/acts_as_learnable","commit_stats":null,"previous_names":["itsdan/acts_as_learnable"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dankimio%2Facts_as_learnable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dankimio%2Facts_as_learnable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dankimio%2Facts_as_learnable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dankimio%2Facts_as_learnable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dankimio","download_url":"https://codeload.github.com/dankimio/acts_as_learnable/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228432595,"owners_count":17918894,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flashcards","ruby"],"created_at":"2024-12-06T08:09:06.330Z","updated_at":"2024-12-06T08:09:06.795Z","avatar_url":"https://github.com/dankimio.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ActsAsLearnable\n\nActsAsLearnable is a Ruby gem for ActiveRecord models. It provides a simple way to create flashcards in your app. It automatically schedules flashcards for review depending on recall quality (1 to 5). You can easily create a Spaced Repetition System (SRS) using this gem. ActsAsLearnable uses SuperMemo 2 algorithm.\n\nConsider using [repetition](https://github.com/dankimio/repetition), a rewrite of this gem with many improvements.\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'acts_as_learnable'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install acts_as_learnable\n\nCreate and run migrations (will add flashcard fields if table already exists):\n\n    $ rails generate flashcard MODEL\n    $ rake db:migrate\n\n## Usage\n\nWithin your model call `acts_as_learnable` method:\n\n```ruby\nclass Flashcard \u003c ActiveRecord::Base\n  acts_as_learnable\nend\n```\n\nIt will automatically extend your class with all necessary methods.\n\nThen you can review flashcards:\n\n```ruby\ncard = Flashcard.create\ncard.review(4)   # =\u003e Recall quality from 1 (bad) to 5 (perfect)\ncard.due_today?  # =\u003e false\ncard.due         # =\u003e 2015-03-11\ncard.studied_at  # =\u003e 2015-03-10\ncard.interval    # =\u003e 1\ncard.repetitions # =\u003e 1\n```\n\n## Contributing\n\n1. Fork it ( https://github.com/dankimio/acts_as_learnable/fork )\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create a new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdankimio%2Facts_as_learnable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdankimio%2Facts_as_learnable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdankimio%2Facts_as_learnable/lists"}