/Goalify

An iOS app help you achieve your goals!

Primary LanguageSwift

Goalify

An iOS app help you achieve your goals!

Inspiration

The inspiration behind Goalify stems from the desire to empower users to achieve their long-term goals by breaking them down into manageable tasks. The concept of earning points and redeeming rewards provides instant motivation, creating a positive feedback loop for sustained progress.

What it does

Goalify is an iOS app designed for users to set personalized tasks and rewards. As users complete daily and weekly tasks, they earn points that can be redeemed for rewards, serving as instant gratification and motivation on their journey toward achieving long-term goals.

How I built it

I used Swift and Xcode for app development, leveraging Procreate for customized UI elements such as textured backgrounds for tasks and rewards.

Challenges I ran into

Venturing into Swift for the first time posed challenges, especially with functional programming. While ChatGPT aided in troubleshooting, newer APIs required diving into documentation.

SwiftUI was a learning curve, demanding trial and error for an appealing design.

Although I explored the Screen Time API, limited online resources led me to prioritize core functionality, reserving Screen Time integration for post-hackathon.

Accomplishments that I'm proud of

It's the first time for me to build an app, and my first time using Swift, I'm proud that I'm able to make model, ViewModel, and UI work seamlessly together.

What I learned

I delved into Swift and SwiftUI, gaining valuable insights into functional programming and UI design. I also tried my best to clean up my code, making it easier for future me to debug and add more functionality to the app

For UI design, I learned how to create my own color palette, as well as some basic UI design skills, including layout and color usage.

What's next for Goalify

  1. Screen Time API Integration: Automate task completion based on app usage to prevent cheating. For instance, verify if the user dedicated the full 10 minutes to learning French on Duolingo.
  2. Health Kit Data Utilization: Leverage Health Kit data to track and reward users for reaching exercise goals.
  3. Enhanced UI: Continuously improve the user interface for a more engaging experience.