Skip to content

cesar-programs/reviewLoop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ReviewLoop

A study review app that helps students prime their minds for effective study sessions, identify knowledge gaps, and track confidence in exam topics.


Creator: Cesar A. Herrera
Student ID: 909712718
Course: CSC 680 - iOS Application Development
Instructor: Axel Ancona Esselman
Institution: San Francisco State University
Semester: Spring 2025


Executive Summary

ReviewLoop is designed to help students maximize the effectiveness of their study sessions by leveraging active recall and self-reflection. After an initial lecture or study session, students log key topics, exam dates, and create personalized short-answer prompts to prime their memory for future reviews. When it's time to study, students can access these prompts in ReviewLoop to mentally recall information and identify knowledge gaps. The app encourages users to reflect on each prompt, then set their phone aside and study the source material to fill in any gaps. By tracking confidence levels across topics, students can strategically allocate their study time and approach exams with greater self-awareness and preparation.


Technology Stack

  • IDE: Xcode
  • Programming Language: Swift
  • UI Framework: SwiftUI
  • Data Persistence: SwiftData
  • Source Control: GitHub

Milestone 1: Project Proposal

Use Cases

Maria, Undergraduate Biology Student
After class, Maria enters "Cell Structure" as her topic, sets the exam date, and writes prompts like "What are the main organelles and their functions?" Before her next study session, Maria reviews her prompts, realizes she forgot about lysosomes, and focuses her study accordingly. She rates her confidence as "Medium" after studying.
Alex, Graduate Engineering Student
Alex tracks multiple topics, such as "Thermodynamics" and "Fluid Mechanics." Each time he studies, he reviews his own prompts, notes where his understanding is weak, and updates his confidence ratings. Closer to the exam, Alex focuses on topics where his confidence is low.
Priya, Medical Student
Priya quickly logs topics and writes recall questions after each lecture. The app helps her stay organized and ensures she doesn't neglect any subject areas, boosting her overall exam readiness.

Must-Have Features

  • Topic Logging: Enter the name of the topic and exam date after a lecture or study session.
  • Custom Prompts: Create short-answer prompts/questions to prime your mind for future study sessions.
  • Review Table: View all topics, exam dates, and track confidence ratings in one place.
  • Active Recall Workflow: Begin a study session by reviewing your custom prompts and reflecting on your knowledge (answers are not entered in the app).
  • Guided Study: The app encourages you to put down your phone and focus on filling knowledge gaps with source material.
  • Confidence Tracking: After each session, rate your confidence (Low, Medium, High) for each topic.

Nice-to-Have Features

  • Sorting & Filtering: Sort or filter the review table by exam date, topic, or confidence level.
  • Flashcards Mode: Automatically generate flashcards from your prompts for rapid review.
  • Reminders & Notifications: Get reminders to review topics as exam dates approach or based on confidence ratings.
  • Progress Analytics: Visualize your confidence trends and study frequency with charts.
  • Cloud Sync: Sync your data across multiple devices.
  • Collaboration: Share prompts and topics with classmates or study groups.
  • Automatic Theme Switching: App theme (light/dark) automatically adapts to system settings for a seamless experience.
  • Tagging/Categorization: Add tags to topics for better organization (e.g., "Biology", "Math", "Lecture 1").

Wireframes

Below are the key hand-drawn wireframes representing the main user flows.


Milestone 2: Prototype

Feature Estimation & Assignment

Feature Estimated Hours
Topic Logging UI (SwiftUI) 4
Custom Prompt Creation (SwiftUI) 3
Review Table Display (SwiftUI) 5
Active Recall Workflow (SwiftUI) 6
Confidence Tracking & Rating 3
Guided Study Flow 4
Data Persistence (SwiftData) 5
Basic App Navigation (SwiftUI) 2

Total Estimated Hours: 32


Prototype Implementation Status

  • Core navigation between all major screens is functional.
  • Data model for topics, prompts, exam dates, and confidence ratings is implemented using SwiftData.
  • Users can add topics and prompts, and view them in a basic table.
  • Confidence rating and guided study flows are present but visually unstyled.
  • Data persists locally between app launches.
  • Source control managed via GitHub with regular commits.

Note:
At this stage, the app's UI is unpolished and uses many default SwiftUI components and colors. The focus was on implementing the main workflows and ensuring the data model and navigation work correctly.


Prototype Gallery

Below are screenshots of the functional prototype, as captured from Xcode's SwiftUI preview.


Milestone 3: Final Submission

Final Implementation

  • All must-have features have been implemented.
  • The app allows users to log topics, create prompts, review topics, reflect on knowledge gaps, and rate their confidence.
  • The UI is visually polished and consistent, with improved layout, color scheme, and typography.
  • Most app colors are defined in Assets.xcassets as named colors for color consistency in this version.
  • Data persists between app launches using SwiftData.
  • Source code is organized and versioned using GitHub.
  • The project follows a standard MVVM structure, with separate folders for Models, Views, ViewModels, and reusable Components.

Final App Gallery

Below are screenshots of the completed app, showcasing the final UI and user experience.


Submission Checklist

  • All must-have features implemented
  • Final UI screenshots included in README
  • Codebase is well-documented and organized
  • README finalized with complete details
  • GitHub repository link submitted to Canvas

About

Reinforce what you just learned—on your schedule

Resources

Stars

Watchers

Forks

Languages