{"id":15106941,"url":"https://github.com/rep2recall/r2r-cli","last_synced_at":"2026-02-02T11:09:31.677Z","repository":{"id":47015437,"uuid":"371708649","full_name":"rep2recall/r2r-cli","owner":"rep2recall","description":"CLI and programmability-focused memorizing flashcard app.","archived":false,"fork":false,"pushed_at":"2021-09-17T06:06:09.000Z","size":228194,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-17T06:49:23.932Z","etag":null,"topics":["anki","cli","flashcards","hacktoberfest","hacktoberfest2021","spaced-repetition"],"latest_commit_sha":null,"homepage":"","language":"Go","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/rep2recall.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-05-28T13:24:29.000Z","updated_at":"2021-10-28T15:58:29.000Z","dependencies_parsed_at":"2022-09-16T13:50:35.241Z","dependency_job_id":null,"html_url":"https://github.com/rep2recall/r2r-cli","commit_stats":null,"previous_names":["patarapolw/rep2recall"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/rep2recall/r2r-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rep2recall%2Fr2r-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rep2recall%2Fr2r-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rep2recall%2Fr2r-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rep2recall%2Fr2r-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rep2recall","download_url":"https://codeload.github.com/rep2recall/r2r-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rep2recall%2Fr2r-cli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260399882,"owners_count":23003267,"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":["anki","cli","flashcards","hacktoberfest","hacktoberfest2021","spaced-repetition"],"created_at":"2024-09-25T21:03:29.251Z","updated_at":"2026-02-02T11:09:26.646Z","avatar_url":"https://github.com/rep2recall.png","language":"Go","readme":"# r2r-cli\n\n![](/docs/2021-06-13_14-23.png)\n\nRepeat until recall, with widening intervals, minimal CLI version.\n\nCLI and programmability-focused memorizing flashcard app.\n\n```\n$ r2r --help\n\nRepeat Until Recall - a simple, yet powerful, flashcard app\n\nUsage:\n   r2r {flags}\n   r2r \u003ccommand\u003e {flags}\n\nCommands: \n   help                          displays usage informationn\n   load                          load the YAML into the database and exit\n   version                       displays version number\n\nFlags: \n   -b, --browser                 browser to open (default: Chrome with Edge fallback) (default: .)\n   -o, --db                      database to use (default: data.db)\n   --debug                       whether to run in debug mode (default: false)\n   -f, --file                    files to use (must be loaded first) (default: .)\n   --filter                      keyword to filter (default: .)\n   -h, --help                    displays usage information of the application or a command (default: false)\n   -m, --mode                    mode to run in (app / server / proxy / quiz) (default: app)\n   -p, --port                    port to run the server (default: 25459)\n   -v, --version                 displays version number (default: false)\n```\n\n## Simple, and file-based\n\nYou can see example input in `/data/*.yaml`. You can see that it is [Eta](https://eta.js.org/) / browser-side JavaScript based. This is further enhanced by plugins in `/packages/app/plugins`.\n\nOtherwise, quizzing (and mnemonic) data are generated and stored in `data.db`; with is a SQLite file. The schema can be seen in `/packages/app/db/*.go`.\n\n## Real and latest browser-side JavaScript\n\nYou use any JavaScript that latest browsers support. Of course, `\u003cscript type=\"module\"\u003e` is also supported.\n\n## Better search engine\n\nThe search allows not only searching by tags (`tag:`) and data fields (`\"key\":`), but also by statistics (`srsLevel:0`, `wrongStreak\u003c2`) and by date (`nextReview\u003c-1h`).\n\nFurther design of the search engine can be seen in \u003chttps://github.com/patarapolw/qsearch\u003e.\n\n## Dependencies\n\nThis app utilizes Chrome DevTools Protocol. Most Windows computers already have this by default via Microsoft Edge.\n\nHowever, in macOS and Linux, you will require to install either Google Chrome, or Chromium (or Ungoogled Chromium).\n\n## Deployment as a server\n\nYou can do that, but an environment variable, `SECRET` will be required, which will be generated in `config.yaml` by default.\n\n## Parent project, as a concept\n\nThe idea is not new. It came from another project of mine, \u003chttps://github.com/rep2recall/rep2recall\u003e.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frep2recall%2Fr2r-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frep2recall%2Fr2r-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frep2recall%2Fr2r-cli/lists"}