Code Monkey home page Code Monkey logo

cpts-322-five-guys-one-chair's Introduction

CPTS_322_PROJECT

Software Engineering Principles I

Project Name: GPTask

Instructor: Dr. Haipeng Cai

Contributors: Ethan Villalovoz, Roy Zabetski, Bryan Frederickson, Nicholas Santos, Ryan Aloof

Introduction

Welcome to the GPTask repository! This project is the culmination of our work in the Software Engineering Principles I course, where we developed a task management application to streamline task organization and simplify user workflows.

Project Description

The objective of GPTask is to develop a feature-rich task management app that incorporates ChatGPT and other key functionalities. Our app aims to enhance task organization and productivity for users by providing features such as task breakdown, time tracking, speech-to-text, and visual planning through a calendar interface.

Repository & Installation Setup

To set up the project, follow these steps:

  • Modify/Install Visual Studio 2022.
  • During installation, select the ".NET Desktop Development" workload to add the required components for debugging WPF applications.
  • Clone the repository and set the startup project to "gptask" if it is not set as the startup project by default.

App Usage

Adding Lists

  1. Click "Add List" and enter the list name.
  2. Press the enter key to confirm, or click away from the input text field to cancel.
  3. Multiple lists can be added, even with the same name.

Deleting Lists

  • Right-click on the list you wish to delete and select "Delete" from the context menu.

Adding Tasks

  1. Select a list and click "Add Item" after entering text into the text input field.
  2. For subtasks, click the drop-down of an existing task, enter text, and click "Add Item" in the subtask region.

Deleting Tasks

  • Right-click on a task or subtask and select "Delete."

Breaking down tasks

  • Right-click on a task and select "Break down task" to generate subtasks using ChatGPT.

Speech-To-Text

  • Click "Listen" next to the "Add Item" button to enable speech-to-text input.

Calendar

  • Clicking the "Calendar" button navigates to a month-view calendar.

Settings

  • Clicking the "Settings" button allows you to switch between light and dark modes.

Documentation

For more information on our project, refer to the project milestone reports in the project_milestone_reports folder within the repo. These reports document the implementation progress and key insights gained throughout the development process.

cpts-322-five-guys-one-chair's People

Contributors

ethanvillalovoz avatar ryan2458 avatar

Watchers

 avatar

cpts-322-five-guys-one-chair's Issues

If no lists exist and the user is on the TaskListPage, they can add a TaskListItem.

When we first start the app, we navigate to the TaskListPage (via ApplicationHostService.cs line 54).

A TaskListPage needs a TaskList to be selected in order to be fully functional. Currently, if a user starts the app and does not select a list, the task gets created and entered in the database, but is not retrievable later since it doesn't get associated to a List via the ListTag column in the database.

A few solution ideas:

  • Disable/Hide the add item controls until a List has been selected.
  • Throw an exception if ListTag is not set at TaskListItemModel creation time and handle the creation.
  • Other ideas...?

Make the checkboxes work properly.

The checkboxes don't do anything when checked or unchecked.

Marking a checkbox as checked should move the task to a separate "Completed" region in the view.

Add time tracking for each task

Add a button that will start a custom timer that the user sets.

The time spent on a task should be tracked and added to the database.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.