Inspiration
I was tired of productivity apps that feel like stress machines with their loud ticks and red countdowns. I wanted to build a workspace that treats time gently, inspired by the old fable of the crow slowly dropping pebbles into a pot to raise the water level. Instead of treating an early stop as a failure, I wanted to build a forgiving watercolor companion that celebrates any focus time the user puts in. It shifts the entire experience from cold task checking to a calming practice of attention and self-trust.
What it does
Focus Space is a calm Pomodoro timer that swaps out stressful countdown numbers for quiet, watercolor journey animations. As you focus, your visual companion (like a sailboat or a growing sprout) moves across the screen while loopable, AI-generated lofi music plays in the background. Every single minute of your session is safely recorded in the history log, meaning you get credit for all of your efforts. If you get interrupted, your progress trail simply freezes in place instead of resetting to zero, ensuring you can return to it without any guilt.
How I built it
I built the app natively in SwiftUI, using custom drawing Canvas paths and TimelineView to animate the watercolor trails. SwiftData and CloudKit handle all the backend stuff silently, keeping things completely anonymous and synced across devices. To get the perfect audio beds, I wrote a script that prompts the Suno AI API via Kie.ai and downloads custom loops directly into the bundle. The warm watercolor illustrations were designed and brought to life using Gemini.
Challenges I ran into
Testing App Store subscriptions in Xcode simulators is notoriously buggy and often blocks the review process. I worked around this by building a dedicated "enable premium" bypass button on the paywall screen so anyone can unlock and test the features instantly. I also ran into issues with the Suno API requiring webhook callbacks, which my offline terminal script couldn't handle. I fixed it by sending a dummy callback URL and building a polling mechanism that checks the job status until it has downloaded the audio.
Accomplishments that I'm proud of
I am really proud of the cozy, notebook-style aesthetic I built using AI generated hand-drawn assets and subtle haptics. The custom lofi beats came out sounding incredibly polished and seamlessly loop without breaking concentration. Getting the live Lock Screen widgets and background timer syncing perfectly with SwiftData was a huge technical win. Wrapping all of this up into a complete, beautiful product in a short sprint feels amazing.
What I learned
Rather than writing lines of code manually, I learned how to orchestrate multiple AI tools, specialized scripts, and coding agents to build a complete product. Managing the Suno API integration taught me how to script automated background polling and local asset pipeline downloads successfully. I realized that the role of a developer is shifting from raw syntax editing to high-level system architectural planning and intent direction. Working with Codex and GPT-5.6 as active partners proved how powerful it is to delegate implementation details while retaining product control.
What's next for Focus Space
I need to wire up the actual StoreKit product identifiers in App Store Connect to prepare for the August App Store launch. I am also planning to add more illustrated journeys, like climbing a mountain peak or watching a greenhouse bloom. Lastly, I want to allow a free Flow State with no End for a timer at all.
Built With
- activitykit
- codex
- gemini
- gpt-5.6
- openai
- suno-generated
- swiftdata
- swiftui
- widgetkit
Log in or sign up for Devpost to join the conversation.