@twostraws@transient This is helpful. Would you usually prefer @Transient for derived UI state, or keep that kind of state outside the SwiftData model entirely?
Switched to @convex and honestly, the DX is hard to go back from.
Realtime data, backend functions, schema, auth-friendly patterns, and deploys all feel like one coherent system instead of five services taped together.
Convex is a serious upgrade.
If you’re into sports, fantasy games, SwiftUI, Supabase, or building apps from zero, follow along.
I’ll be posting the journey here.
Play Picks is coming soon.
I’m building PlayPicks.
A social fantasy pick’em app where you make Over/Under picks, compete on leaderboards, and battle friends using virtual credits.
No real money. Just sports, strategy, and bragging rights.
Current focus:
Getting the iOS app polished, improving the pick experience, and making the leaderboard/battle loop feel fun enough that people want to come back.