@shaankhosla/repeat 0.0.22 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,21 +1,15 @@
1
- ## [0.0.22] - 2025-12-31
1
+ ## [0.0.24] - 2026-01-04
2
2
 
3
3
  ### 🚀 Features
4
4
 
5
- - Import from Anki (#17)
5
+ - Use github pages for docs (#30)
6
+ - Play media from cards (#31)
6
7
 
7
8
  ### 🐛 Bug Fixes
8
9
 
9
- - Remove dbg statement
10
-
11
- ### 💼 Other
12
-
13
- - Fix release pipeline
14
-
15
- ### 🚜 Refactor
16
-
17
- - Made the CLI experience better
10
+ - Exclude unreviewed cards from FSRS histograms (#26)
11
+ - Update precommit to use SQLX_OFFLINE mode (#27)
18
12
 
19
13
  ### ⚙️ Miscellaneous Tasks
20
14
 
21
- - Upgrade criterion
15
+ - Update readme with docs badge
package/README.md CHANGED
@@ -4,6 +4,9 @@
4
4
  <a href="https://github.com/shaankhosla/repeat/actions/workflows/ci.yaml">
5
5
  <img alt="CI Status" src="https://img.shields.io/github/actions/workflow/status/shaankhosla/repeat/ci.yaml?branch=main&label=CI&logo=github" />
6
6
  </a>
7
+ <a href="https://shaankhosla.github.io/repeat/">
8
+ <img alt="Documentation" src="https://img.shields.io/badge/docs-GitHub%20Pages-blue?logo=github" />
9
+ </a>
7
10
  <a href="https://github.com/shaankhosla/repeat/releases">
8
11
  <img alt="Latest Release" src="https://img.shields.io/github/v/release/shaankhosla/repeat?display_name=tag&sort=semver&logo=github" />
9
12
  </a>
@@ -25,8 +28,14 @@
25
28
  - Progress is tracked with a hash of the card content, so edits automatically reset their progress.
26
29
  - Free Spaced Repetition Scheduler (FSRS), a state-of-the-art algorithm targeting 90% recall, automatically schedules reviews for you.
27
30
  - Terminal UX: `repeat drill` renders cards with ratatui; `repeat create` launches an editor dedicated to card capture; `repeat check` displays progress at a glance.
31
+ - Inline media support: reference local images/audio/video inside your decks and open them from a drill session without leaving the terminal.
28
32
  - Import from Anki: convert `.apkg` exports into Markdown decks with `repeat import` so you can bring your existing collection along.
29
33
 
34
+
35
+ ## Documentation
36
+
37
+ Installation, quick-start, and usage guides now live in the [documentation](https://shaankhosla.github.io/repeat/).
38
+
30
39
  ## Installation
31
40
 
32
41
  ### Install script (Linux & macOS) - Recommended
@@ -73,8 +82,6 @@ npm install @shaankhosla/repeat
73
82
  C: Speech is [produced] in [Broca's] area.
74
83
  ```
75
84
 
76
- Alternatively, use the built-in editor with `repeat create cards/neuro.md`.
77
-
78
85
 
79
86
  2. Index the cards and start a session:
80
87
 
@@ -83,126 +90,8 @@ Alternatively, use the built-in editor with `repeat create cards/neuro.md`.
83
90
  ```
84
91
 
85
92
  - `Space`/`Enter`: reveal the answer or cloze.
93
+ - `O`: open the first media file (image/audio/video) referenced in the current card before revealing the answer.
86
94
  - `1`: mark as `Fail`, `2`: mark as `Pass`.
87
95
  - `Esc` or `Ctrl+C`: end the session early (progress so far is saved).
88
96
 
89
- 3. Check your collection status:
90
-
91
- ```
92
- repeat check cards
93
- ```
94
-
95
- The command prints totals for new/reviewed cards, due/overdue counts, and upcoming workload.
96
-
97
- ## Card Format
98
- Files can be structured in any way, such as:
99
-
100
- ```
101
- flashcards/
102
- math.md
103
- science/
104
- physics.md
105
- chemistry.md
106
- ...
107
- ```
108
-
109
- Cards live in ordinary Markdown. `repeat` scans for tagged sections and turns them into flashcards. This means that you can embed your active recall content alongside your regular notes using your favorite markdown editor, such as Obsidian. Also, you can leverage all of the normal advantages of using markdown files, such as using version control to back them up.
110
-
111
- - **Basic cards**
112
-
113
- ```
114
- Q: What is Coulomb's constant?
115
- A: The proportionality constant of the electric force.
116
- ```
117
-
118
- - **Cloze cards**
119
-
120
- ```
121
- C: The [order] of a group is [the cardinality of its underlying set].
122
- ```
123
-
124
-
125
- ### Parsing Logic
126
-
127
- - Cards are detected by the presence of a `Q:/A:` or `C:` block. The end of the card is indicated by a horizontal rule (`---`), or the start of another card.
128
- - Cards are hashed with Blake3; modifying the text produces a new hash and resets that card's performance history.
129
- - Metadata lives in `cards.db` under your OS data directory (for example, `~/Library/Application Support/repeat/cards.db` on macOS). Delete the file to discard history; the Markdown decks remain untouched.
130
- - Multi-line content is supported.
131
-
132
- ## Commands
133
-
134
- ### `repeat drill [PATH ...]`
135
-
136
- Start a terminal drilling session for one or more files/directories (default: current directory). Options:
137
-
138
- - `--card-limit <N>`: cap the number of cards reviewed this session.
139
- - `--new-card-limit <N>`: cap the number of unseen cards introduced.
140
-
141
- Example: drill all the physics decks and a single chemistry deck, and stop after 20 cards.
142
-
143
- ```
144
- repeat drill flashcards/science/physics/ flashcards/science/chemistry.md --card-limit 20
145
- ```
146
-
147
- ### `repeat create <path/to/deck.md>`
148
-
149
- Launch the capture editor for a specific Markdown file (it is created if missing). Shortcuts:
150
-
151
- - `Ctrl+B`: start a basic (`Q:/A:`) template.
152
- - `Ctrl+K`: start a cloze (`C:`) template.
153
- - `Ctrl+S`: save the current card (hash collisions are rejected).
154
- - Arrow keys/PageUp/PageDown: move the cursor; `Tab`, `Enter`, `Backspace`, and `Delete` work as expected.
155
- - `Esc` or `Ctrl+C`: exit the editor.
156
-
157
- Example: open (or create) the neuro deck for editing.
158
-
159
- ```
160
- repeat create cards/neuro.md
161
- ```
162
-
163
- ### `repeat check [PATH ...]`
164
-
165
- Re-index the referenced decks and emit counts for total, new, due, overdue, and upcoming cards so you can gauge the workload before drilling.
166
-
167
- Example: review stats for math class `flashcards/math/` before a study session.
168
-
169
- ```
170
- repeat check flashcards/math/
171
- ```
172
-
173
- ### `repeat import <anki.apkg> <output-dir>`
174
-
175
- Convert an Anki `.apkg` export into Markdown decks. If files with the same names already exist in the export folder, they will be overwritten, so this command is safe to rerun if needed. This is a beta feature, so please report any issues on GitHub. FSRS history is not currently transferred over.
176
-
177
- Example: import `my_collection.apkg` into `cards/anki/` and start drilling right away.
178
-
179
- ```
180
- repeat import ~/Downloads/my_collection.apkg cards/anki
181
- ```
182
-
183
-
184
- ## Development
185
-
186
- Run the lint/test suite with:
187
-
188
- ```
189
- cargo fmt --all
190
- cargo clippy
191
- cargo test
192
- ```
193
-
194
- The repository also ships a `just precommit` recipe that runs the same checks.
195
-
196
-
197
- ## Roadmap
198
-
199
- - [X] Import from Anki
200
- - [ ] Allow scrolling to other cards in a collection while creating a new card
201
- - [ ] Edit an existing card while keeping the progress intact
202
- - [ ] Allow for a fuzzy search of existing cards
203
- - [ ] Use LLMs to import from various content sources
204
-
205
-
206
- ## License
207
97
 
208
- Licensed under the Apache License, Version 2.0. See `LICENSE` for details.
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "hasInstallScript": true,
24
24
  "name": "@shaankhosla/repeat",
25
- "version": "0.0.22"
25
+ "version": "0.0.24"
26
26
  },
27
27
  "node_modules/@isaacs/balanced-match": {
28
28
  "engines": {
@@ -514,5 +514,5 @@
514
514
  }
515
515
  },
516
516
  "requires": true,
517
- "version": "0.0.22"
517
+ "version": "0.0.24"
518
518
  }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "artifactDownloadUrl": "https://github.com/shaankhosla/repeat/releases/download/v0.0.22",
2
+ "artifactDownloadUrl": "https://github.com/shaankhosla/repeat/releases/download/v0.0.24",
3
3
  "author": "shaankhosla",
4
4
  "bin": {
5
5
  "repeat": "run-repeat.js"
@@ -83,7 +83,7 @@
83
83
  "zipExt": ".tar.xz"
84
84
  }
85
85
  },
86
- "version": "0.0.22",
86
+ "version": "0.0.24",
87
87
  "volta": {
88
88
  "node": "18.14.1",
89
89
  "npm": "9.5.0"