Aldo Maximillian Sugito - Project Portfolio Page

Overview

CheatLogs is a cheatsheet management application that revolutionizes the world of programming. CheatLogs uses a hybrid of Command Line (CLI) and Graphical User Interface (GUI) to interact with the user. We believe that the command line interface provides a fast user interaction. While the graphical user interface, provides extra convenience to type long contents with a simple and a familiar interface for the user.


Summary of Contributions

Code Contributed

You can see the codes that I contributed using the link bellow:

Aldo's Contribution


Features Implemented

Added Graphical User Interface for Adding and Editing Cheatsheet

The text editor is used to provide a graphical user interface for the user to add and edit the content of the cheatsheet. The Java Swing library is used in the implementation of the text editor. Inside the text editor, therer are buttons that can assist the user in inputting their cheatsheet content.

Highlights

Implementing the text editor was one of the most important chunk of the user interface. At first, we opted to use the Java Desktop class for the text editor, and use the system text editor. However, we believe that it would potentially create a dependency problem from using different systems.

Therefore, we opted to use the JavaSwing library.


The CheatSheet Class

The cheatsheet class is used to contain the attributes of the cheatsheets.

Hightlights

The cheatsheet class is the basis of the features implemented in our program. It dictates how the DataStorage class is implemented and also the functionality of almost all of the program. The main challenge is to determine what are the member attributes that needs to be added in the class.


The Preloaded CheatSheets

Preloaded cheatsheets is a built-in feature of CheatLogs, that is automatically loaded into the CheatLogs.

Highlights

The preloaded cheatsheets is quite difficult to implement. I helped my colleague to implement the initial version of the preloaded cheatsheets. Moving on our development timeline, we used XML files instead of the usual .txt file to store the cheatsheets, as it already have a built in tags to separate the contents of the cheatsheet.

THe footer of the text editor can be used to display not the information. The footer panel can also be used to display error to the user.

Highlights

The footer is implemented using a JPanel that is inserted insiede the BoxLayout of the Editor. The footer is displayed using the JLabel class, and using its methods, the content can be customized.


Project Management


Contribution to team-based tasks


Documentation


Review/Mentoring Contributions

Here are the pull requests I helped review and merged:

Here are the issues that I raised -220 -218 -149 -147