Didn’t like your last flashcard study session? SBX allows you to create flashcards & study them without leaving your terminal. It is also a fully documented Python library. This means you can use it with both the sbx command and with your own python scripts/applications as well.
What is so special about SBX?
SBX uses a spaced repetition algorithm to schedule cards. Specifically the Sm2 algorithm. Sm2 algorithm was originally developed for Super Memo application. What makes SBX easy to use is that it uses simple markdown files. If you don’t like using command line applications, this might not be the best tool for you. However, if you do (or want to pretend that you do) this might be a good tool in your daily toolkit.
Note that, I also plan on adding different algorithms in the future. If you come up with your own spaced repetition algorithm I’d like to know. Create an issue here. Pull requests are welcome.
Flashcard study strategy?
I recommend performing a flashcard study session every day. However if you forgot to do for one or two days, that is totally OK and you can continue when you can. What if there are too many cards in my flashcard study session? What can I do? Simple, do as much as you can. Continue next day.
How do I install it?
- Recommended way is to use
pipx install sbx.
- Also you can install using
pip3 install sbx.
- In some OSes this is
pip install sbx.
- In some OSes this is
Folder structure for a good flashcard study session
What makes a good folder structure? Since SBX uses simple markdown files, you can use any folder structure you like. Also sbx command support studying recursively from any directory. You can create your own study strategy and a folder structure that goes with it. For example, you can create folders Monday, Tuesday, .. up to Sunday. or you can create folders for categories like Distributed Computing, Algorithms and Java.
Creating cards, How do I do that?
sbx create algorithms/merge-sort.md
- This will create a card. You can then use your favourite editor to edit it. (As long as you preserve HTML comments and don’t change those lines it should work fine)
- However you can also use
sbx edit algorithms/insertion-sort.mdto edit a file using SBX itself. (This support simple vi features and not a full featured clone, starts at insertion mode to make it easier for new users)
- You can navigate using Ctrl+Arrows
- To exit just press Ctrl+E.
- To write file just press Ctrl+W.
- Press F1 anytime to view keyboard shortcut help
How do I study the cards I created?
- Simply use
sbx study algorithmsto study cards in algorithms directory.
- If you want to study recursively use
sbx study -r algorithms.
- All the navigation is done using Ctrl+Arrows.
- Press Enter to press any button.
- In the study window you can use scratch pad to type an answer or practice an answer. (This get cleaned when you go to next card)
- You can select a quality of your answer and it will take you to a new card.
- 0 – I’ve completely blacked out
- 1 – Vague idea
- 2 – Do not remember fully.
- 3 – Remember 80%
- 4 – Remember 100%
- 5 – Very easy and I think I’ve memorised it.
- Once you are done it will show a message box
- You can press Ctrl+E to exit.
- Press F1 to access help window.
Thanks for reading through the tutorial. That’s all. It’s very easy to use and you’ll get the hang of it after few days of use.