Project: Calidr

Calidr is a time-management and scheduling calendar application, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).

Given below are my contributions to the project.

Contributions

  • Code contributed: RepoSense link

  • Enhancements:
    • GUI enhancements:
      • Adapted PersonCard to display Task data type.
      • Added TaskListPanel, adapted from PersonListPanel, to display tasks in a list.
      • Adapted MainWindow to support CalendarView and TaskListPanel.
    • New Commands:
      • show - Show the current task and full details in a focused pop-up.
      • page - Switch between calendar layouts.
      • view - Focus the calendar on a specific date.
    • Other:
      • Brainstormed name and designed logo for the project.
  • Project management:
    • Managed releases v1.3 - v1.5rc (3 releases) on GitHub
  • Documentation:
    • User Guide:
      • Added Definitions section to explain the meaning of terms used in the User Guide.
      • Added documentation for features show, page, view.
      • Did various cosmetic tweaks to existing documentation.
    • Developer Guide:
      • Added implementation details of the Calendar Panel GUI component.
  • Community:
    • PRs authored (with non-trivial comments): #59, #116
    • Contributions to forum discussions: #74, #76, #187
  • Tools:
    • CalendarFX integration:
      • Extended Event class to support native Task data type, including conversion utils.
      • Redirect user-interactive navigation handlers to take key-input events.
      • Implemented Observer pattern to dynamically update calendar on changes to internal data.
      • Implemented support for multiple layouts: DayPage, WeekPage, MonthPage.

Credits

  • The calendar UI component was adapted from the CalendarFX library by DLSC.