Project: Dictionote

Dictionote is a desktop application that helps CS2103T students in finding information about the module’s materials, writing notes about them, and sharing these notes with others. It is optimised for Command Line Interface (CLI) users so that searching and writing operations can be done quickly by typing in commands.

Given below are my contributions to the project.

  • New Feature: Added the ability to manipulate UI panel
    • What it does: allows the user to change the UI panel visibility, divider position and orientation via command
    • Justification: In a note-taking application, It important to allow the user to customize the interface to fit the user need.
    • Highlights: Change the user interface as the user desire.
  • New Feature: Added a show command for dictionary content and note content that allows the user to show the content in a panel.

    • What it does: allows the user to show the dictionary content or note on their respective panel
    • Justification: In note-taking application, some note and dictionary content can be really long. It can make the list view really long to scroll. Showing it on a separate panel allows the list to be more compact.
  • New Feature: Added edit mode command for the shown note that allows the user to edit note.

    • What it does: allows the user to edit the note in a text-editor like an environment
    • Justification: Note can be relatively long. It isn’t ideal to let the user edit their note with CLI. The most ideal way to let the user edit their note in a way where the user is allowed to modify their existing note easily
  • New Feature: Added ListCommand and CommandDetail command that shows the user command summary.
    • What it does: show the user list of command available and command details
    • Justification: With so many commands available, it is hard for the user to remember all available feature. User can use listcommand to quickly recap the available command.

Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.2, v1.3 (2 releases) on GitHub
    • Organising of team project document and weekly meeting minutes on team project document link
  • Enhancement Features:
    • Update existing GUI to Dictionote GUI (Pull requests #42)
    • Add UI Feature : open and ``close` command (Pull requests #42)
    • Save User Interface Configuration upon exit (Pull requests #78)
    • Modify Result Display with adaptive height (Pull requests #78)
    • Add Help Feature : listcommand command (Pull requests #88)
    • Update Note Feature : update Note Card UI (Pull requests #84)
    • Update Dictionary Feature : update Dictionary Content Card UI (Pull requests #101)
    • Add Dictionary Feature : showdc command (Pull requests #102)
    • Update Note Feature : update Show Note Content UI (Pull requests #104)
    • Add Note Feature : Add Edit Mode features (Pull requests #119)
      • Command include: editmode, save, and quit
    • Add UI Feature : Toggle UI Orientation (Pull requests #140)
      • Command include: toggledividerd and toggledividerc
    • Add UI Feature : Set Divider Position (Pull requests #153)
      • Command include: setdividerm, setedividerd, setedividern and setedividerc
    • Add Help Feature : List command details (Pull requests #160 ,#236)
      • Command include: commanddetaild, commanddetailn, commanddetailc and commanddetailu
    • Updated the UI Theme (Pull requests #162)
  • Documentation:
    • User Guide:
      • Added documentation for the features open and close (Pull requests #38 ,#175)
      • Added documentation for the features listcommand (Pull requests #89)
      • Added documentation for the features editmode and all setdivider and toggledivider command (Pull requests #114 ,#148 , #257)
    • Developer Guide:
      • Added Non-functional Requirement (Pull requests #29)
      • Added user stories and use case for UI related feature (Pull requests #37)
      • Added implementation details for UI related feature (Pull requests #149 , #260)
      • Updated UI class diagram and UI component details (Pull requests #141 , #260)
  • Community:
    • PRs reviewed (with non-trivial review comments): #53, #105, #139, #158
    • Contributed to forum discussions (examples: 1)
    • Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3)