Tasketch is for those who need to manage their time by allocating time for each daily task. More importantly, Tasketch is optimized for those who prefer to use a desktop app and work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI).
This Project Portfolio is the enhancement and new added functionality I contributed to this software.
-
Main enhancement: Enhance visual feedback with timeline feature.
-
What it does: It arranges the tasks on a given day into a timeline according to their categories.
-
Justification: By visually showing the arranged timeline, this feature helps the user to better manage their tasks and decide on time allocation.
-
Highlights: Each category timeline will have their own color to be distinguished.
-
Credits: {Shibo’s idea is used on filtering the tasks according to date}
-
-
Other enhancement: Changed the find and history command that allows the user to easily locate a task and see history commands.
-
Code contributed: [Functional code] [Test code] {give links to collated code files}
-
Other contributions:
-
Project management:
-
The UI designer and the person in charge of group work coordination.
-
Managed releases
v1.0
-v1.4
(2 releases) on GitHub
-
-
Enhancements to existing features:
-
Documentation:
-
Updated UserGuide and DeveloperGuide. (available UserGuide DeveloperGuide)
-
-
Community:
-
Tools:
-
Google is always the best friend. :)
-
Java, Javafx and IntelliJ.
-
-
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
The overview and screen shoot picture (available [picture]) == View calender & timeline
Shows the desired month to the user. Noted that only previous month and next month will be shown.
e.g. Current month is April, then only March and May can be shown.
Tip
|
The feature for changing the background color of each day on the calendar will come in v2.0! |
Format:
-
timeline
Shows the timeline of today by default. -
timeline [DATE]
Shows the timeline of that date.
Note
|
After adding or editing a task, user needs to retype timeline [DATE] to refresh the timeline.This implementation is to make sure this feature is not purely part of UI. |
Examples:
Finds tasks whose topic or description contain any of the given keywords.
Format: search KEYWORD [MORE_KEYWORDS] …
-
The search is case insensitive. e.g
Tutorial
will matchtutorial
. -
The order of the keywords does not matter. e.g.
CS2113T tutorial
will matchtutorial CS2113T
. -
Only the description is searched.
-
Only full words will be matched e.g.
tut
will not matchtutorial
. -
Tasks matching at least one keyword will be returned (i.e.
OR
search). e.g.CS2113T tutorial
will returnCS2113T lecture
,CS3235 tutorial
.
Examples:
-
find CS2113T
ReturnsCS2113T lecture
-
f Lecture
ReturnsCS2113T lecture
andCS3235 lecture
Deletes the specified task from Tasketch.
Format: delete INDEX_NUMBER
-
Each tasks is identified by the index number shown in the task list.
-
Deletes the task with the index number.
Examples:
-
list
delete 1
Deletes the task with index number 1 in task list. -
find cs2113t
delete 1
Deletes the task with index number 1 in task list.
Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project. |
There are mainly two parts in this features, calendar and timeline arrangement
These two parts will help the user better arrange their time usage by visualization of time.
-
There are currently two commands with parameters to help achieve this,
month
andtimeline
.-
Implementation for Calendar: Using
GridPane
to separate the whole calendar area into 35 grids.-
Each one of the 35 grids is filled with PaneNode which is defined as area for a day.
-
PaneNode extends AnchorPane.
-
-
-
Implementation for Timeline: Using javafx and segment each part of the browserPanel.
-
First, separate the whole
browserPanel
into 2 parts:upperPane
andtimelinePane
. -
Second, separate the
upperPane
intocalendarPane
andreminderPane
. -
The whole implementation of
timeline
is intimelinePane
using javafx. -
The overall structure is javafx VBox, which is a vertical arrangement structure.
-
Inside the VBox, there are key time points for interval of 2 hours. Then the timeline for each category.
-