Skip to content

About

A comprehensive JavaFX desktop application for student productivity management featuring task tracking, Eisenhower Matrix prioritization, Pomodoro timer, course management, goals & certificates tracking, and advanced analytics dashboard.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎓 SmartStudy+

A comprehensive JavaFX desktop application for student productivity management — featuring task tracking, Eisenhower Matrix prioritization, Pomodoro timer, course management, goals & certificates tracking, and advanced analytics.

Java JavaFX Maven MySQL License


✨ Features

Module Description
🔐 Authentication Secure login & registration with BCrypt password hashing
📋 Task Management Full CRUD with priorities, categories, deadlines, and recurring tasks
📊 Eisenhower Matrix 4-quadrant task prioritization (Do First, Schedule, Delegate, Eliminate)
📚 Course Management Track courses, credit hours, instructors, and semesters
🎯 Goals Tracker Set academic, personal, and skill goals with progress tracking
🏆 Certificates Monitor certification progress and study hours
⏱️ Pomodoro Timer Focus sessions with start, pause, skip, and reset controls
📈 Advanced Analytics Productivity scores, task completion trends, study time distribution
🎨 Modern UI Dark glass-morphism design with custom CSS and smooth animations

📸 Screenshots

🔐 Login Page

Login

📊 Dashboard

Dashboard Dashboard with Pomodoro

📋 Tasks Management

Tasks

📝 Add New Task

Add Task Add Task Eisenhower

📚 Courses

Courses

🎯 Goals

Goals

📝 Add New Goal

Add Goal

🏆 Certificates

Certificates

📊 Eisenhower Matrix

Eisenhower Matrix Matrix Insights

⏱️ Pomodoro Timer

Pomodoro Timer

📈 Advanced Analytics

Statistics Overview Study Time Distribution Performance Insights


🏗️ Architecture

SmartStudy/
├── src/
│   ├── Main.java                    # Application entry point
│   ├── model/                       # Entity classes (User, Task, Course, Goal, Certificate, Pomodoro)
│   ├── dao/                         # Data Access Objects (JDBC)
│   ├── service/                     # Business Logic Layer
│   ├── controller/                  # JavaFX Controllers (15+ controllers)
│   ├── util/                        # Utilities (DBConnection, SceneNavigator, SessionManager, PasswordUtil)
│   └── view/                        # FXML files, CSS stylesheets, images
├── pom.xml                          # Maven configuration
├── schema.sql                       # Database schema
└── .gitignore

Design Pattern: MVC (Model-View-Controller) + DAO + Service layers


🚀 Getting Started

Prerequisites

  • Java JDK 17+
  • Maven 3.9+
  • MySQL 8.0+

1. Clone the Repository

git clone https://github.com/Hamza-zgh/SmartStudy-Plus.git
cd SmartStudy-Plus

2. Set Up the Database

# Log into MySQL
mysql -u root -p

# Run the schema
source schema.sql;

Update src/util/DBConnection.java with your MySQL credentials if needed.

3. Run the Application

mvn clean javafx:run

That's it! The application will launch automatically.


🛠️ Tech Stack

Technology Purpose
Java 17 Core language
JavaFX 21 Desktop GUI framework
FXML Declarative UI layout
CSS Custom styling (glass-morphism dark theme)
Maven Build automation & dependency management
MySQL Relational database
JDBC Database connectivity
jBCrypt Password hashing

📁 Database Schema

The application uses 6 main tables:

  • users — Authentication & profiles
  • tasks — Task management with Eisenhower flags
  • courses — Academic course tracking
  • goals — Personal & academic goals
  • certificates — Certification progress
  • pomodoro — Focus session tracking

See schema.sql for full schema definition.


🔐 Security Features

  • ✅ BCrypt password hashing (salted, adaptive)
  • ✅ Prepared statements (SQL injection prevention)
  • ✅ Session-based user authentication
  • ✅ User ownership validation on all data operations

🎯 Key Highlights

  • Recurring Tasks — Support for daily and weekly patterns (e.g., MON,WED,FRI)
  • Eisenhower Matrix — Automatic task categorization with productivity scoring
  • Real-time Statistics — Dynamic charts and KPI dashboards
  • Responsive Dialogs — Modal windows for CRUD operations
  • Persistent Sessions — Login state maintained during app lifecycle

📄 License

This project is licensed under the MIT License.


👤 Author

Hamza ZGH


💡 Built with passion for productivity and clean code.

About

A comprehensive JavaFX desktop application for student productivity management featuring task tracking, Eisenhower Matrix prioritization, Pomodoro timer, course management, goals & certificates tracking, and advanced analytics dashboard.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages