I Built an IOS App in 3 Days with Literally No Prior Swift Knowledge

-

the Brush Tracker app in 3 days with no prior experience with Swift, the most important programming language for iOS development. Although I actually have a completely functional app continue to exist the App Store, I still have little or no Swift knowledge because I used “vibe coding” to develop this app.

In this text, I’ll explain the method, AI tools I used, and share a few of my learnings and insights.

Anything as Lovable alternative

I previously used Lovable for developing web applications nevertheless it doesn’t appear to be an option for mobile app development, at the very least for now.

There are alternatives to Lovable for app development. I recently got here across a tool called Anything, and since I’d had such an excellent experience with Lovable, I made a decision to provide it a attempt to develop my app. At first, it appeared to work well, but the general experience wasn’t as efficient as I’d hoped.

The toughest part was not having the ability to test my changes, fixes, and enhancements instantly. Anything does have a built-in UI for testing, however the experience wasn’t very smooth. It also directs you to check the code through the Expo app, but that didn’t work well for me either.

I should mention that I didn’t have any prior app development experience. For developers or anyone with some coding background, Anything could probably be a more productive tool than it was for me.

I exported the code from Anything and tried to check it on Xcode on my mac but got many errors and couldn’t get it to working. So I made a decision to make use of an alternate. Cursor appeared to the plain selection.

Cursor

I’ve heard superb things about Cursor from many friends who’re actively using it. I wanted to provide it a try myself.

I used the identical prompt in Cursor and asked it to construct the app. Then I created an XCode project with the folders and files generated by Cursor. I began the simulator on XCode and it worked on the primary try.

The goal of Brush Tracker is to aid you stay consistent along with your day by day toothbrushing. It gives you a cleanliness rating that starts at 100%. In case you skip a day, the rating drops and your teeth within the app begin to look a bit yellowish to match the cleanliness rating.

Note: All images utilized in this text include screenshots from my app, Brush Tracker.

The primary version only had the most important feature of the app. I believe that is probably the most efficient way of constructing products with AI-based tools. Get the primary version up and running before adding features.

To check the app’s core feature on the simulator, I had to vary the simulator’s date without completing “today’s brushing” to envision whether the cleanliness rating would drop and the teeth visualizations would update as expected.

Cursor suggested to vary the date on the XCode simulator however the simulator doesn’t have the date and time settings anymore. Older versions of XCode simulator had this setting but not anymore.

A workaround solution was to vary the date on my Mac. This manner, the date on the simulator also modified and I used to be in a position to test the feature.

One thing I noticed was that after I modified the date on my Mac, Cursor didn’t see my account and didn’t work. It got back to normal after I modified the date back to auto.

Timer feature

A built-in brushing timer felt just like the welcome boost to Brush Tracker. Users can simply mark a brushing session as done or use the timer while they brush.

It took me a couple of tries to get this feature working the way in which I imagined. You’ll be able to just tell Cursor so as to add a feature, nevertheless it works significantly better once you tweak the prompt and explain exactly what you wish. When you give clear instructions, Cursor often does an awesome job.

Reward feature

I desired to add an additional motivation when the user completes day by day brushings. After completing the sessions, they’ll tap “Get Your Each day Reward” and see a brief motivational quote. It’s a small touch but a pleasant reminder for dental health.

You’ll be able to actually learn while vibe coding

Cursor not only writes the code but additionally helps you learn. After I was attempting to add the reward feature, the implementation was not correct at first. It wasn’t working properly.

I described the problem to Cursor, and it explained each what was making the issue and the right way to fix it. Listed below are two examples of how Cursor can aid you learn along the way in which:

Use Cursor more efficiently

Cursor is an awesome tool but there are some ways to make it more efficient.

Let’s assume code fails or it doesn’t execute accurately. In case you know the problematic part, highlight that section and add to the chat. It definitely makes it easier for Cursor to repair problem.

In Brush Tracker, I used to be having an issue when establishing notifications. I defined the issue and asked Cursor to repair it. Cursor told me it was fixed but the issue still existed. Then, from the code changes I discovered where the issue was occurring and added that part to the chat.

Cursor fixed it on the subsequent try:

One other thing value mentioning is the “context used” percentage in Cursor. It robotically captures relevant context out of your codebase, so that you don’t must tell it which files to have a look at. But your chat history can also be included in that context, and sometimes it comprises old problems or irrelevant code.

That extra clutter can increase token usage or make Cursor less efficient. When the context used percentage increases, I clear the chat history.

Distributing your app within the App Store

When you complete testing your app using the simulator or a physical device (e.g. your individual iPhone), it’s time to distribute your app within the App Store in order that others can see (and hopefully use) your app.

It’s not a sophisticated process but there are loads of details, which could take long especially once you’re doing it for the primary time. I discovered a video on YouTube that clearly explains all the process step-by-step.

After completing all of the steps, I submitted my app for review. Once it was approved, I got an email from App Store Connect letting me understand it was ready for distribution.

I’d wish to indicate that I don’t have any affiliation with any of the AI tools mentioned in this text.

Thanks for reading! You’ll be able to take a look at Brush Tracker on the App Store. I’d love to listen to from you should you try it or have any feedback.

ASK ANA

What are your thoughts on this topic?
Let us know in the comments below.

0 0 votes
Article Rating
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments

Share this article

Recent posts

0
Would love your thoughts, please comment.x
()
x