Project Architectural Overview
The purpose of Healthy Paws is to serve as a health app for dogs. It can be used to contain all of the users' dogs' information through profiles. The profiles retain their name, breed, age, and weight. Each dog profile is also linked to their own food hub that contains the dog's food, how much they get fed, and their feeding schedule. Each dog also has their health profile that pertains to them. The health section holds the vaccines the dog has received, any health issues, the name of the vet and clinic, and any treatment plans such as prescription medication or supplements, as well as when the next vet appointment is.
A settings section allows the user to receive notifications and toggle from light to dark mode. Healthy Paws was built in Xcode using Swift/SwiftUI, and later integrated with Firebase, with the idea that this is to be marketed to Apple and iOS users only.
Development Phases
This project is split into two phases: Pre-Integration and Post-Integration. Pre-Integration refers to everything that was done in the project before Firebase, and Post-Integration refers to everything done in the project after Firebase was integrated with Xcode.
Pre-integration started in September 2025 and ended at early November 2025. An outline was made before the start of pre-integration in August 2025, providing a rough draft of what each month would contain and milestones to be done to build the project. September focused on watching YouTube videos that focused on Swift tutorials to learn the basics of the language, and then moved to more advanced tutorials that involved functions, login, etc.
In addition to the tutorials, the project was created in Xcode; only two files existed for the entirety of the pre-integration phase—contentView.swift, and healthypawsapp.swift files.
On paper, each section—dog profile, health, food, and settings—were written down with details on what each category should pertain to ensure that they would be transferred to code. To end the month of September, the login page was created along with an authentication function to ensure that the user could log in to their account and be redirected to the homepage.
October focused on the actual coding of the project. Following the successful login page, the homepage was created to mimic that of the dashboard on Canvas, with square tiles that, once clicked on, would redirect the user to each category. This was done using a Navigation VStack and a LazyVGrid that put each square into a grid, taking into account the height and width of the square tiles, then each tile became a button for the category the user wished to navigate to.
Interface Dashboard Buttons
In total, there are four buttons, each coded to have a different color, the name of the button/category, and a picture that easily denotes what that category is. Each button was designed as follows:
-
Dog Profile is purple with an image of a dog on it.
-
Health is red with a heart.
-
Food is green with a fork and knife.
-
Settings is grey with a gear on it.
The Dog Profile View contained the actual page that holds the dog profiles. Once added, for the user to view their dog’s profiles, it also gives the user the option to add a dog and later edit their dog’s profile. Add Dog includes: Name of the dog, the dog's age, the breed of the dog, and the weight of the dog.
To add a dog the user will click the “save dog” button in order for it to be saved to the Dog Profile.
Edit Dog Profile essentially allows the user to edit the dog’s profile by clicking the blue pencil button.