Skip to content

zindade/Task-Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

23 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿงฉ Task Tracker CLI

https://roadmap.sh/projects/task-tracker

A simple Java Command Line Interface (CLI) application to manage tasks. It supports adding, listing, updating, deleting, and marking tasks as in progress or done. Data is stored in a local JSON file (tasks.json) so it persists between sessions.


๐Ÿš€ Features

  • โž• Add tasks with a description
  • ๐Ÿ“‹ List all tasks or filter by status (todo, in-progress, done)
  • โœ๏ธ Update a task description
  • ๐Ÿ—‘๏ธ Delete tasks by ID
  • โœ… Mark tasks as in-progress or done
  • ๐Ÿ’พ Persistent storage in tasks.json

โœ… Requirements

  • Java 17+
  • Maven 3.8+

โ–ถ๏ธ Running the app

mvn -q exec:java

You will enter an interactive prompt:

Task Tracker CLI. Type 'help'.
>

๐Ÿงช Usage

add "Read a book"
list
list todo
list in-progress
list done
update 2 "Read two books"
delete 3
mark-in-progress 2
mark-done 2
help

๐Ÿ—‚๏ธ Project Structure

src/
  main/java/com/taskcli/
    Application.java           # Entry point
    cli/TaskApp.java           # Command parsing and routing
    model/Task.java            # Task entity
    domain/Status.java         # Task status enum
    repository/TaskRepository* # Storage interfaces and JSON impl
    service/TaskService*       # Business logic
tasks.json                     # Local storage (created/updated at runtime)
pom.xml                        # Maven config

๐Ÿ“Œ Notes

  • tasks.json is created/updated in the project root when you run the CLI.
  • Status values are stored as TODO, IN_PROGRESS, and DONE in JSON.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages