Skip to content

LukeA-17/fall-software-engineering-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

102 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CTMA - Collaborative ToDo Manager Application

CTMA is the hottest up and coming ToDo manager out there! Keep track of every task you have, including their due dates, categories, and priorities with the simplicity of a command line interface.

Team video demonstration of early CLI program

Table of Contents

  1. Features
  2. Setup
  3. Command Line Usage Guide
  4. GUI Usage Guide
  5. GitHub Issues Fixes

1. Features

  • Manage todos from multiple projects
  • Add, edit, and mark tasks as complete
  • Simple command-line interface
  • Intuitive graphical user interface
  • Multi-profile support
  • Customizable themes
  • Auto-saves settings and tasks on exit

File Storage Functionality

  • settings.json: Stores your theme preference and a list of profiles.
  • tasks.json: The default profile file where tasks are stored.
  • Custom profiles: You may create additional .json files anywhere on your computer and link them via the Settings menu

2. Setup

Requires Python 3.10 or higher

  • Download the CTMA folder, and move it into your chosen python environment
  • Run main.py. CLI used to interact with the program.

3. Command Line Usage Guide

Creating a New Task:

This is the point where you can validate your save data loaded succesfully.

Upon starting the program, the following prompt appears:

CTMA Startup Menu

To start the task creation process, type 1 and then enter.

The program will then prompt you for each trait of the new task

Enter your answers after the prompt. It should look something like this:

CTMA New Task

You may view your tasks at any time by selecting 5 in the main menu, and then the desired view, like so:

CTMA Task View

When you are done using the program, enter 0 into the main menu to save and close:

CTMA Closure

4. GUI Usage Guide

Home Dashboard

Home Page

This is the screen you are presented with upon launch.

  • Top Bar: Displays the current date, the Add Task button, and the Home button. The home button will return you to this screen at any time.
  • Main Views: Buttons to quickly filter tasks by "Due Today", "All" or "Completed".
  • Category Views: Automatically generates buttons for every unique category (e.g., "School", "Work") found in your task list.
  • Bottom Bar: Contains the Settings button and the Exit CTMA button.

Creating and Editing Tasks

To Create a Task:

Create Page

  1. Click Add Task in the top right corner.
  2. Fill in the Label, Due Date (MM/DD/YYYY), Category, and People Involved.
  3. Select a Priority (None, Low, Medium, High) from the dropdown.
  4. Click Save to commit the task or Paste Task to fill fields from a copied task.

To Edit a Task:

Edit Page

  1. In the Task View, click the "..." button next to a task.
  2. Update the desired fields.
  3. You may also Copy Task to the clipboard or Delete Task from this menu.

Viewing Tasks

View Page

  • Sorting: Use the dropdown menu at the top to sort by Priority, Due Date, or Label.
  • Color Coding: Tasks are color-coded by priority:
    • Red: High Priority
    • Orange: Medium Priority
    • Yellow: Low Priority
    • Gray: No Priority
  • Completion: Click the checkbox on the left of a task to toggle it between Complete and Ongoing.
  • Past Due: Tasks with due dates before the current day are marked as "Past Due".

Settings

Settings Page

Click the Gear icon on the home page to access settings.

  • Theme Selection: Choose between different visual themes.
  • Profile Management: Switch between different save files (profiles), add new profiles, or delete existing ones.

5. GitHub Issues Fixes

  • Weekly meeting scheduled for Mondays at 10:15 am

3. 🟒 Missing Docstrings

4. 🟒 todo module

  • Addressed via issue reply
  • Addressed via issue reply
  • Code has been restructured and user_flow.py no longer exists

7. 🟒 No design document

  • Initially addressed in commit 9cdd384
  • Further addressed in commit 7e050cf

8. 🟒 Missing Design Doc

  • Initially addressed in commit 9cdd384
  • Further addressed in commit 7e050cf

10. 🟑 Missing team video

  • In progress

11. 🟒 Missing AI log

  • Addressed in commit 6bc2b02 by adding a description of file storage to the README

15. 🟒 M2 Results and Score

  • Score feedback, no action needed

16. 🟑 Commits

  • In progress

17. 🟒 No Class Diagram

18. 🟒 No Use Case Diagram

  • In progress
  • In progress

23. 🟑 GUI Design

  • In progress
  • In progress

25. 🟑 Long methods in Code

  • In progress
  • In progress
  • In progress

28. 🟑 SRS Doc

  • In progress

29. 🟑 Supporting Doc

  • In progress
  • In progress

31. 🟒 General Observations

  • Feedback - no action needed. The team will continue to use this as a reference for further improvements

32. 🟒 Results

  • Score feedback, no action needed

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages