Grail Diary's building blocks

Yes, async / await is going to be great. However, Xcode 13’s DocC documentation compiler is currently the most inspiring feature for me. For the past several days I’ve been pulling out the building blocks of Grail Diary into separate packages and revamping the documentation. Often, when trying to write the documentation, I’ve realized that the APIs themselves are awkward, so I’ve refactored those as well. While this work hasn’t done much to make Grail Diary feel different when using it, I’m feeling awesome because the foundation of the program is getting more solid.

Since the new documentation toolchain is in beta, I’m isolating this work in an xcode13 branch across the following repositories:

  • SpacedRepetitionScheduler for recommending times to review prompts in a spaced-repetition system
  • BookKit for utility routines for dealing with different book web services, like Google Books, Open Library, Goodreads, and LibraryThing.
  • TextMarkupKit for parsing and formatting text as you type.