The app is Time Tango, a Pomodoro timer app. I chose this concept after conducting keyword research for popular terms that face minimal competition on the app store. The app is free to use and received approval in its first review.
The strategy focuses on testing new ideas as quickly as possible. There's no need for complex coding or adherence to best practices at this stage. If the Minimum Viable Product (MVP) doesn't gain the traction I am hoping for, I'll discard it and move on. If it proves valuable, I can always invest more time in enhancing the codebase.
Here's how I developed it -
I used ChatGPT for boilerplate code generation
Create the boilerplate for an ios 15 swift ui app with xcode 14 called "Pomodoro Timer". Which has two tabs, first tab allows the user to start a timer of 25 mins. There will be a timer in the centre of the screen with mins and seconds. Below the timer, we'll have 4 dots to denote the rounds. After 25 mins there will be 5 mins break which ends the first round. After 4 rounds there will be a long 30 mins break. Second tab is the settings screen where the user can change the Pomodoro flow duration, short and long break duration, and change the number of rounds.
This generated the basic structure of the app. Although not perfect, it provided a good starting point. I then improved the UI and refined the code to ensure functionality.
To create the App Icon, I used Midjourney
Pictorial mark logo of pomodoro focus timer app, tomato, simple minimal, pastel background, --no realistic photo details, shading, 3d, text --q 2
The result was the image on the left. I used Photoshop to refine it, producing the final image on the right.
I expanded the app's capabilities by adding new features. I utilized ChatGPT to generate some of this code and to debug when I encountered issues. Below are the links to the additional resources and ChatGPT prompts for each specific feature.
1. Minimalist Pomodoro Timer
2. Dynamic Island and Live Activities
How to support Dynamic Island in iOS 16.1 - https://www.youtube.com/watch?v=AUOoalBwxos
3. Lock Screen Timer
Same as above.
4. Break/Focus Notifications
Scheduling local notifications https://www.hackingwithswift.com/books/ios-swiftui/scheduling-local-notifications
5. Customizable Timers and Rounds
Boilerplate code created the stepper for setting options by default, so I asked it to create a picker instead for better UX.
Instead of stepper I want to show predefined options to the users, in following manner -
1. pomodoro duration = 10, 15, 20, 25, 30, 45, 50, 60, 90.
2. short break duration = 5, 10
3. long break duration = 15, 20, 30
4. rounds = keep it as a stepper only
6. Onboarding Screen
Create an onboarding screen in swift ui with title, features list which comprises of image, title and subtitle. And continue button at the bottom.
7. How to Screen
Create how does it work screen to introduce user to the pomodoro technique, mention intro and steps.
You can download and explore the app via this link -> App Store link
I hope you enjoyed this article, and if you have any questions, comments, or feedback, then feel free to comment here or reach out via Twitter.
Thanks for reading!