Inspiration
Many people have a hard time maintaining good habits consistently and their consistency. HabitHive aims to address this problem by offering a simple, intuitive interface that allows users to add, log, and track habits and their progress!
What it does
- Self-governed: Ability to track progress on habits yourself
- Personalized Habit Creation: choose habits and set daily goals
- Progress tracking: Able to see completed tasks, and visual streaks to stay motivated
How we built it
- Entirely built using Swift, SwiftUI, and the mobile app development concepts we learned in the Bootcamp.
- Data Structures: Uses array, habit list, to store all added and modified habits
- Functions: To increment and decrement progress
- Closures: Used for code execution post button click
- Used classes, structs, functions and closures to bring our ideas to life!
- The app functions by adding a new “Habit” object to an initialized list of habits. We are able to access specific habits by passing them through with a @State and @Binding tags with views to log progress!
Challenges we ran into
- Issues with SwiftUI formatting and getting the displays to look like how we wanted
- Getting data to be consistent between pages and properly passing the ViewModel through them
Accomplishments that we're proud of
- The effort every member put in to reach our final product
- The simplicity of the app for the user
What we learned
- A lot about mobile app development, like the MVVM framework
- Gained a lot of experience with Swift and SwiftUI, learning many useful features of the language
What's next for HabitHive
- Social network: Able to add friends and see their progress
- More advanced analytics
- Data Storage: Storing data for the previous day’s habits
- User Login and Profiles
Log in or sign up for Devpost to join the conversation.