Name of project: StudyCard
Team members: Alex Gobert, Robert Horvath, Sam Song, Chris Tran
Dependencies: Xcode 14.0.1, Swift 5, Firebase iOS SDK v9.0.0+
- Test Account:
- user: [email protected]
- pass: 12345678
- You may encounter issues with non-unique bundle identifiers. If this happens, append something (like .[name]) as a workaround. Although this should break our Firebase app, we have not encountered any issues with Firebase even with an inconsistent bundle ID. We first encountered this issue shortly after presenting during class on December 5th, and we are unsure why this happened seemingly at random.
Note: If the following lists look like bullets with brackets next to them, that is because GitHub-flavored Markdown (GFM) treats - [x]
and - []
as checked and unchecked boxes, respectively. If you are not using GFM, then the checkboxes might not render properly.
- Login/Register path with Firebase
- "Settings" screen. Behaviors:
- Font Style
- Color Scheme
- Sound Toggle
- Non-default fonts and colors used
- Core Data
- User Profile path using camera and photo library
- Multithreading
- SwiftUI
- Two+ additional view types:
- Search Fields
- Segmented Controls
- Switches
- Bar Buttons (Navigation Bar)
- Table View
- Collection View
- Tab VC
- Page VC
- Alerts
- Popovers
- Stack Views
- Scroll Views
- Haptics
- User Defaults
- Local notifications
- Core Graphics
- Gesture Recognition
- Animation
- Calendar
- Core Motion
- Core Location/MapKit
- Core Audio
- Others
Feature | Description | Percentage Distribution |
---|---|---|
Login/Register Path | Allow user to create account and login | Chris (95%) Alex (5%) |
Settings | Enables user to change visual settings, including font and colors | Chris (90%) Alex (10%) |
UI Design | Team designed UI collaboratively and worked together on compliance to theme and font choices dictated by Settings screen | Chris (40%) Robert (20%) Sam (20%) Alex (20%) |
Core Data | Stores flashcard sets into local storage for persistence across app launches | Robert (100%) |
User Profile | Enables user to set a profile picture and modify account details | Sam (80%) Alex (20%) |
Search Field | Enables user to search for card sets | Robert (100%) |
Segmented Controls | Enables user to change which appears first: term, definition, or mixed | Robert (100%) |
Switches | Enables user to toggle flashcard shuffle and configure app settings | Chris (75%) Robert (25%) |
Table Views | Organizes data in a readable format | Chris (33%) Robert (33%) Alex (33%) |
Stack Views | Stacks UI elements for easier layout | Alex (25%) Robert (25%) Sam (25%) Chris (25%) |
Alerts | Displays error messages | Alex (25%) Robert (25%) Sam (25%) Chris (25%) |
Notifications | Daily notifications to study | Robert (100%) |
Gesture Recognition | Enables user to swipe and tap on flashcards while studying | Sam (80%) Alex (20%) |
Animation | Animates card motion and progress bar | Sam (90%) Alex (10%) |
Core Audio | Audio for card animations | Sam (100%) |