Theory / 2 Cents: don't just work on a GUI for spaced repetition cards, invent an open file format for spaced repetition (perhaps an XML plus an schema, or a JSON based file format, a subset of HTML or markdown, etc...).
The idea is that you create a file format spec, perhaps even some open source libraries to operate on the file format. And then you sell a really nice GUI for editing that (perhaps a web page, perhaps a mobile app, perhaps both?).
If your format is good people will use it, perhaps create new editors for it: if you have competition on GUIs it means you succeeded :-). Some people may be willing to pay for a hosted version or an app, others will likely host it themselves, I'm sure people would donate to you, the main developer if that was the case.
The idea is that you create a file format spec, perhaps even some open source libraries to operate on the file format. And then you sell a really nice GUI for editing that (perhaps a web page, perhaps a mobile app, perhaps both?).
If your format is good people will use it, perhaps create new editors for it: if you have competition on GUIs it means you succeeded :-). Some people may be willing to pay for a hosted version or an app, others will likely host it themselves, I'm sure people would donate to you, the main developer if that was the case.