I'm surprised no one mentioned Memoet (https://github.com/memoetapp/memoet). It is a much more modern version of Anki - much more open algorithm, REST APIs and universal interfaces and self-hosted control over one's data.
Anki, imo, already has an open algorithm (that the user can change via plugins), universal interfaces, and is "self-hosted". My eyes perked up at REST api, but it doesn't look like there's a centralized server that hosts shared cards, which is where my mind went.
I'm building https://github.com/AlexErrant/Pentive/ which is basically Anki + Github + Reddit; people can optionally upload their cards for others to download/fork, and the most popular cards rise to the top. It's FLOSS, offline-first, supports plugins and p2p syncing, and is very much a WIP. My proof of concept is almost done though, which demos the critical technologies in a secure way.
I agree that Anki is likely less developer friendly but its popularity does make up for that I feel, with ostensibly state of the art SRS algorithms being published with Anki implementations (https://github.com/open-spaced-repetition/fsrs4anki) out of the box.
Though as someone that's solely used Anki for language learning, I do value the ability to remember more words in less time more than ease of development so it's not unlikely Memoet is a better choice for other usecases.
There's a number of Anki alternatives such as https://mnemosyne-proj.org/, but Anki has an active collaborative community, as opposed to most of alternatives, as far as I know.