- Overview
- Features
- Technologies Used
- Installation
- Usage
- Database Configuration
- Project Structure
- Available Screens
- Developers
- License
- Contact
PriorPlan is a desktop application built with Java Swing and Spring Boot that helps users manage and organize their daily tasks efficiently. The application provides a user-friendly interface for creating, updating, and tracking tasks with different priority levels and statuses.
With PriorPlan, you can prioritize your tasks, set due dates, track task progress, and mark tasks as completed. The application is designed to help you stay organized and focused on what matters most.
- User Authentication: Secure login and signup functionality
- Task Management:
- Add new tasks with title, description, due date, and priority
- Update existing tasks
- Delete tasks
- Mark tasks as completed
- Task Prioritization: Set task priority as HIGH, MEDIUM, or LOW
- Task Status Tracking: Track task status (NOT_STARTED, IN_PROGRESS, COMPLETED)
- Due Date Management: Set and track due dates for tasks
- User-Friendly Interface: Intuitive and easy-to-use Swing-based UI
- Data Persistence: All tasks are stored in a PostgreSQL database
- Java 21: Core programming language
- Spring Boot 3.4.4: Application framework
- Spring Data JPA: Data access and persistence
- PostgreSQL: Database for storing user and task data
- Hibernate: ORM for database operations
- Java Swing: GUI framework for desktop application
- JCalendar: Date picker component
- Lombok: Reduces boilerplate code
- Maven: Build automation and dependency management
- Java Development Kit (JDK) 21 or higher
- PostgreSQL database server
- Maven (or use the included Maven Wrapper)
-
Clone the repository:
git clone https://github.com/syedsadiquh/PriorPlan.git cd PriorPlan -
Configure the database (see Database Configuration section)
-
Build the project:
# Using Maven mvn clean install # Or using Maven Wrapper ./mvnw clean install
-
Run the application:
# Using Maven mvn spring-boot:run # Or using the generated JAR file java -jar target/priorplan-0.0.1-SNAPSHOT.jar
-
The application will start with a login screen
-
Create a new account or log in with existing credentials
-
Use the home page to navigate to different features:
- Add Task: Create new tasks
- Manage Task: View, update, delete, or complete existing tasks
- About: View information about the application
- Developer Details: View information about the developers
The application uses PostgreSQL as its database. You need to:
- Install PostgreSQL if not already installed
- Create a database named
priorplan - Configure the database connection in
src/main/resources/application.yml:spring: datasource: url: jdbc:postgresql://localhost:5432/priorplan username: your_username password: your_password driver-class-name: org.postgresql.Driver
The application will automatically create the necessary tables when it first runs.
The project follows a standard Spring Boot application structure:
src/main/java/com/syedsadiquh/priorplan/: Root packagemodels/: Data models and entitiesrepository/: Spring Data JPA repositoriesdao/: Data Access Objectsui/: Swing UI componentsglobals/: Global variables and constantsPriorPlanApplication.java: Main application class
The application includes several screens:
- Login and Signup pages
- Home page with navigation to all features
- Task Adding page for creating new tasks
- Task Manager for viewing and managing existing tasks
- About page with application information
- Developer Details page
-
Syed Sadiqu Hussain - Backend
- Email: [email protected]
- GitHub: syedsadiquh
- LinkedIn: syedsadiquh
-
Mohanty Hitesh Rabindranath - Frontend
- Email: [email protected]
- GitHub: Mohanty-Hitesh-4495
This project is licensed under the Apache License, Version 2.0. See the LICENSE file for more details.
For any questions or feedback please reach out to:
- Email: [email protected]
- GitHub Profile: syedsadiquh
- LinkedIn: syedsadiquh
Feel free to open an issue on GitHub or contact us if you have any queries or suggestions.
