October Progress Report and Roadmap
Added 2018-10-29 04:48:20 +0000 UTCHey y'all! I thought I would check in and give a little update.
I've been working on what I've dubbed API 2.0. For those of you unfamiliar, an API, or application programming interface, is a set of tools with which to build an application. The API is what allows the LegendKeeper client, which runs in your browser, to communicate with its brain, the LegendKeeper server(s). Like I said in a previous post, API 1.0 was made when LegendKeeper was more of a personal toy. When this project got the attention it did, I knew then that the current API wouldn't cut it and I've since put on my Professional Software Engineer Hat (tm).
Since then, I've been re-working the API to 1) re-implement known features in a way fit for a production application, and 2) implement the remaining features required for the initial limited release. This means addressing performance concerns (I've sped up the API by a factor of 10x or so already, and still have a few easy wins left), caching data that is regularly accessed, and securing API endpoints so that you're the only one that can see your data. Thankfully, LK running on API 2.0 now has feature parity with LK running on API 1.0. And it's faster! Wew!
So what's left before the testing release, or what I'm calling the "Limited Release"? Concretely speaking:
1. User account creation flow. I generally save this for near the end of initial development, as developing an app reveals new and interesting things about the initial state of a user. The back-end part of this is handled; this is more of a design thing and won't be terribly difficult.
2. A few minor text editor features and UX bug fixes. At its heart, LegendKeeper is a writing app, which means the text editor needs to be solid. It can't bug out or be annoying while you're doing arguably the most important activity in the app. This means smart auto-save, some basic version control (with a more advanced iteration coming later), and a couple small quality of life features I'll announce separately.
3. Super secret flagship feature. There's one major feature I haven't given away yet, and it's been really difficult because I'm so excited about it. This and #5 are arguably the largest chunk of work left.
4. Add delete functionality to the image and map managers. This is stupid easy, but I've been waiting until API 2.0 was done so I wouldn't have to re-do it.
5. Prepare for production deployment. The "holy shit" part of this all. This is where I make sure that LegendKeeper servers don't catch on fire on release day. I have most of the tooling ready for this, but I've got a grocery list of things I need to set up, and then automate so I don't have to do it again. That's programming!
Long story short, still no release date, but we're getting close enough that I'm more comfortable talking about what's left to do. Again, I really appreciate everyone's support. I've had so much fun working on LegendKeeper and I'm so excited to see people use it. I won't lie, it's a little stressful knowing I'm building something for a ton of people already, but the community has been ultra-kind, creative, and patient.
Also, Patreon supporter badges will hopefully be ready to reveal sometime this week or next.
Regards,
Braden