Project: Socialite

Socialite is a desktop address book application used for teaching Software Engineering principles. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.

Given below are my contributions to the project.

  • New Feature: Added Twitter and TikTok handles to a person’s contact card
    • What it does: allows user to keep track of friend’s twitter and tiktok handles.
    • Justification: This feature improves the product significantly as it is one of the main selling points of the app: Integration with social media
    • Highlights: This feature is necessary for the implementation of the Social Media Handle Hyperlinks feature elaborated below.
  • New Feature: Added social media handle hyperlinks
    • What it does: allows user to go to a friend’s profile on a particular social media platform in the default browser by clicking on the friend’s social media handle.
    • Justification: This feature increases integration with social media, and improves the entire user experience as it allows for seamless transitioning from socialite to social media platform. This is as compared to having to copy the handle from Socialite, then go to the social media website, and search for the handle.
    • Highlights: The implementation of this feature required integration between the GUI, the fields in the person and the browser.
  • New Feature: Added Profile Picture to the person card
    • What it does: allows user to add a profile picture to a contact, by choosing from a pop-up file browser. Chosen file is copied to the data/profilepictures filder
    • Justification: This feature allows for greater customisation of contacts, and personalisation of the app.
    • Highlights: The implementation of this feature was challenging as it required changes to the storage and GUI, as well as knowledge of how to work with file systems in Java.
    • Credits: credits for how to centre the image in an image view.
  • Code contributed: RepoSense link

  • Enhancement to Existing Features:
    • Refactored Storage package from Addressbook to ContactList. #153
    • Wrote tests to test profile picture related commands, parser, model and storage, raising coverage by 2.12% and 0.80% respectively #137. #144
  • Documentation:
    • User Guide:
      • Did the initial update from Addressbook 3 User Guide to Socialite User Guide #10
      • Added documentation for the hyperlinks feature #54
      • Added documentation for the profile picture feature #75
    • Developer Guide:
      • Updated Storage package portion of DG, which includes documentation and UML diagrams #158
      • Added Picture Command portion into Implementation section of DG, including sequence diagram and write-up #158
  • Community: