Skip to content

ihuegi/StudyBuddy

Repository files navigation

StudyBuddy - Android Study Tracker By Steven Price StudyBuddy is a mobile application built with Jetpack Compose and Firebase designed to help students track their focus time, manage subjects, and visualize their academic progress.

Full Demo Here: https://youtu.be/1Ze6XQ6SDo0

Core Features

image
  1. Secure Authentication Login Screen: Uses Firebase Email/Password Authentication to verify returning users and securely manage sessions.
image

Sign Up Screen: Handles new user registration, instantly creating a unique User ID (UID) in the Firebase backend to isolate personal study data.

image
  1. Personalized Dashboard The command center of the app, providing:

Subject Overview: A dynamic grid of enrolled classes.

Time Tracking: Real-time calculation of "Focused Time" synced from the local database.

Task Management: A glance at upcoming deadlines or study goals.

  1. Academic Organization Subjects List: Displays all subjects with an aggregated "Total Study Time" per subject.

Subject Details: A deep dive into a specific class, listing historical study sessions and performance statistics.

image
  1. Study Session Logging Users can "Add Study Session" to log:

Duration: The exact time spent studying.

Notes: Qualitative data on what was covered.

Rating: A self-assessment of how productive the session was.

Data Management (CRUD Operations) The app utilizes Room Database for local persistence and Firebase for cloud identity, implementing the four fundamental "CRUD" operations:

Subjects image

Create: Add new classes (e.g., "Calculus", "Mobile Dev").

Read: Fetch and display the list of subjects on the Dashboard.

Update: Modify subject names or icons.

Delete: Remove a subject. Note: Implements Cascade Delete to ensure all associated study sessions are removed if a subject is deleted.

Study Sessions Create: Log new focus blocks after a timer ends.

Read: Query sessions by specific subject, by date (for stats), or view an "all sessions" history.

Update/Delete: Correct or remove logged sessions to keep study data accurate.

Tech Stack Language: Kotlin

UI Framework: Jetpack Compose

Backend: Firebase Auth

Local Database: Room SQLite

Navigation: Compose Navigation Component

About

Productivity app for students

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages