Skip to content

A Java-based console task manager with scheduling, file persistence, and background music using multithreading.

License

Notifications You must be signed in to change notification settings

chronosgit/java-task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

59 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Task Manager

A console-based task managing tool built with Java, designed to help you manage personal tasks with deadlines. This project demonstrates core Java concepts including object-oriented programming and file I/O.

✨ Features

  • πŸ“ Create and manage tasks
  • ⏰ Set deadlines
  • 🎡 Background music playback (runs in a separate thread)
  • πŸ’Ύ Save and load tasks to/from disk
  • πŸ“‚ Structured using Maven conventions
  • πŸ” Cross-platform (runs on any system with Java 17+)

πŸ“¦ Tech Stack

  • Java 17+
  • File I/O
  • Java Sound API for audio

πŸ“ Project Structure

This project follows the standard Maven directory layout:

java-task-manager/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main/
β”‚   β”‚   β”œβ”€β”€ java/
β”‚   β”‚   └── resources/
β”‚   └── test/
β”‚       β”œβ”€β”€ java/
β”œβ”€β”€ target/
β”œβ”€β”€ pom.xml
β”œβ”€β”€ README.md

How to use

  1. Install JDK.
  2. Clone the repository.
  3. Create two files inside src/main/.data directory:
    • .settings.properties
    • .tasks.csv

In .settings.properties, add your settings like this:

# Thu Jul 31 18:27:33 PDT 2025
color=
username=

In .tasks.csv, add the CSV header and a mandatory empty line below it:

id,title,body,isCompleted,start,end
[mandatory empty line here]

About

A Java-based console task manager with scheduling, file persistence, and background music using multithreading.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages