A comprehensive medication management solution built with SwiftUI and Firebase
- User Authentication: Secure login and registration using Firebase Auth
- Medication Tracking: Create, manage, and track medication schedules
- Smart Reminders: Configurable reminders with custom time and frequency settings
- Profile Management: Personalized profiles with health condition tracking
- Intuitive UI: Clean, modern interface with smooth animations
- Cross-device Syncing: Cloud-based data syncing via Firebase
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
MedicFix is built using a modern tech stack that emphasizes code maintainability, performance, and user experience:
- SwiftUI: Declarative UI framework for building the entire user interface
- Combine: For reactive programming and state management
- Swift Concurrency: Leveraging async/await patterns for asynchronous operations
- Firebase Authentication: Secure user authentication with email/password
- Cloud Firestore: NoSQL database for storing medication schedules and user profiles
- Firebase Storage: For storing profile images and other media assets
- Firebase Cloud Messaging: For delivering reliable push notifications
The app follows the MVVM (Model-View-ViewModel) architecture pattern:
/MedicFix
/Models # Data models (Medication, ReminderTime)
/Views # UI components and screens
/Components # Reusable UI elements
/ViewModels # Business logic and state management
/Managers # Service layer (Auth, Storage, Notifications)
/Utilities # Helper functions and constants
The app implements a secure authentication system with Firebase Auth, supporting:
- Email and password authentication
- Persistent login sessions
- Secure profile management
MedicFix uses Firebase Firestore to synchronize medication data across devices:
- Real-time data updates
- Offline support with local caching
- Efficient data queries with Firestore indices
The app's reminder system is built with UserNotifications framework and Firebase Cloud Messaging:
- Scheduled local notifications for medication reminders
- Custom notification sounds and actions
- Reliable delivery across device states
MedicFix implements an efficient profile image system using Firebase Storage:
- Image compression before upload to optimize bandwidth
- Caching of downloaded images for performance
- Progressive loading for a smooth user experience
- Xcode 14.0+
- iOS 15.0+
- Swift 5.5+
- CocoaPods
- Clone the repository
git clone https://github.com/Priyanshu-Singhz/MedicFix.git
cd MedicFix
- Install dependencies
pod install
- Open the workspace
open MedicFix.xcworkspace
-
Add your Firebase configuration
- Create a Firebase project at Firebase Console
- Add an iOS app to your Firebase project
- Download the
GoogleService-Info.plist
and add it to your Xcode project - Enable Authentication, Firestore, and Storage in the Firebase Console
-
Build and run the app in Xcode
- Medication interaction warnings
- Integration with Apple Health
- Medication adherence analytics
- Family sharing capabilities
- Doctor appointment scheduling
- Prescription refill reminders
This project is licensed under the MIT License - see the LICENSE file for details.
Your Name - Priyanshu Singh
Linkedin: (Linkedin)
Project Link: (https://github.com/Priyanshu-Singhz/MedicFix)
Built with ❤️ using SwiftUI and Firebase