I even set a deadline for myself, but I’m not ready to share it with you yet. 😅 Either way, the long weekend in Poland we start today might give me a bit of a head start, or at least I hope so. 🤞
I plan to leave basically only the data model, as I want users to be able to upgrade to the new version seamlessly, but everything else I plan to get rid of and start from scratch.
I’ve learned so much during all this time, and the more I want to change, the more I see I have issues in the foundation of the app, so either way I need to change a lot even for some basic functionality. 🫤
However… Struggling with App Intents, I made a tough decision regarding Spark’s future. Instead of slowly progressing as I did over the last half a year or so, I’ll make a hard cutoff and start developing version 2.0. 😳
Much later than I wanted to, but a new version of Spark is available to download! 🥳 It’s also a much smaller update than I thought it’d be, but at least now Spark has a new #LiquidGlass icon. 🤩
#BuildInPublic #iOSDev #IndieDev #IndieHacker
https://fed.brid.gy/r/https://bsky.app/profile/did:plc:i2grml6bwjg77vymz2gtxbo2/post/3m525ekyfrs2o

Spark - Habit Tracker (@letspark.it)
Spark just got even better ✨
This update brings a refreshed Calendar view for easier streak tracking, a new iOS 26 Liquid Glass icon, and smoother overall performance.
Stay consistent. Stay focused. Stay sparkling. 💎
#iOS26 #HabitTracker #SparkApp #LiquidGlassDesign
Bluesky SocialAs for the progress in general, I had yet another exhausting week and I haven’t made much progress. I even took a 2-day break from working on Spark completely! 😱 However, I managed to create intents to work with habit groups and extended entities, so I can use them with my view.
I avoided watching Apple’s materials on AppIntents for now and mostly read documentation and example projects, but maybe it’s high time to make use of them. 😁
Running them directly from code by instantiating them and calling perform makes them run in an environment where all their dependencies aren’t initialized. At least that’s what I understand from chatting with AI. However, I admit I haven’t double-checked yet. 😅
This time I asked AI what’s going on, and its explanation seems reasonable. In a nutshell, intents for their dependency injection to work properly need to be run in a proper environment. Be it via Button with intent as a param, or from the Shortcuts app.