Obsidian has a spaced repetition community plugin that I use when I write documentation. I add a flashcard for everything that I want to learn.
So you just put #flashcards inline (or whatever you tell it to look for) at the bottom if your file.
And then:
This is a question::this is the answer.
This is another question::this is another answer.
I run through my cards about 30 minutes before I start work. It works very well.