From dda5795d38d3c843a7e1fba1e19bbd0c0bb545db Mon Sep 17 00:00:00 2001
From: nihalramesh12629 <>
Date: Thu, 17 Oct 2024 22:59:07 +0800
Subject: [PATCH 1/2] Add GUI Color Coding
---
.gitattributes | 1 -
.github/check-eof-newline.sh | 18 -
.github/check-line-endings.sh | 19 -
.github/check-trailing-whitespace.sh | 26 -
.github/run-checks.sh | 11 -
.github/workflows/gradle.yml | 46 --
.gitignore | 23 -
LICENSE | 21 -
README.md | 12 -
build.gradle | 72 ---
config/checkstyle/checkstyle.xml | 434 -------------
config/checkstyle/suppressions.xml | 10 -
copyright.txt | 9 -
docs/AboutUs.md | 56 --
docs/Configuration.md | 6 -
docs/DevOps.md | 79 ---
docs/DeveloperGuide.md | 568 ------------------
docs/Documentation.md | 29 -
docs/Gemfile | 10 -
docs/Gemfile.lock | 269 ---------
docs/Logging.md | 11 -
docs/SettingUp.md | 55 --
docs/Testing.md | 36 --
docs/UserGuide.md | 199 ------
docs/_config.yml | 15 -
docs/_data/projects.yml | 23 -
docs/_includes/custom-head.html | 6 -
docs/_includes/head.html | 12 -
docs/_includes/header.html | 36 --
docs/_layouts/alt-page.html | 14 -
docs/_layouts/default.html | 18 -
docs/_layouts/page.html | 14 -
docs/_sass/minima/_base.scss | 294 ---------
docs/_sass/minima/_layout.scss | 263 --------
docs/_sass/minima/custom-mixins.scss | 21 -
docs/_sass/minima/custom-styles.scss | 34 --
docs/_sass/minima/custom-variables.scss | 76 ---
docs/_sass/minima/initialize.scss | 51 --
docs/_sass/minima/skins/classic.scss | 84 ---
docs/_sass/minima/skins/solarized-dark.scss | 4 -
docs/_sass/minima/skins/solarized.scss | 133 ----
docs/assets/css/style.scss | 12 -
docs/diagrams/ArchitectureDiagram.puml | 33 -
.../diagrams/ArchitectureSequenceDiagram.puml | 39 --
docs/diagrams/BetterModelClassDiagram.puml | 21 -
docs/diagrams/CommitActivityDiagram.puml | 18 -
docs/diagrams/ComponentManagers.puml | 31 -
docs/diagrams/DeleteSequenceDiagram.puml | 70 ---
docs/diagrams/LogicClassDiagram.puml | 47 --
docs/diagrams/ModelClassDiagram.puml | 54 --
docs/diagrams/ParserClasses.puml | 38 --
docs/diagrams/StorageClassDiagram.puml | 43 --
docs/diagrams/UiClassDiagram.puml | 60 --
docs/diagrams/UndoRedoState0.puml | 21 -
docs/diagrams/UndoRedoState1.puml | 23 -
docs/diagrams/UndoRedoState2.puml | 21 -
docs/diagrams/UndoRedoState3.puml | 21 -
docs/diagrams/UndoRedoState4.puml | 21 -
docs/diagrams/UndoRedoState5.puml | 22 -
docs/diagrams/UndoSequenceDiagram-Logic.puml | 46 --
docs/diagrams/UndoSequenceDiagram-Model.puml | 23 -
docs/diagrams/add-remark/ParserClass.puml | 14 -
docs/diagrams/add-remark/RemarkClass.puml | 19 -
docs/diagrams/style.puml | 79 ---
.../tracing/LogicSequenceDiagram.puml | 22 -
docs/images/ArchitectureDiagram.png | Bin 19887 -> 0 bytes
docs/images/ArchitectureSequenceDiagram.png | Bin 15175 -> 0 bytes
docs/images/BetterModelClassDiagram.png | Bin 14116 -> 0 bytes
docs/images/CommitActivityDiagram.png | Bin 16227 -> 0 bytes
docs/images/ComponentManagers.png | Bin 17411 -> 0 bytes
docs/images/DeleteSequenceDiagram.png | Bin 28142 -> 0 bytes
docs/images/LogicClassDiagram.png | Bin 36769 -> 0 bytes
docs/images/LogicStorageDIP.png | Bin 5808 -> 0 bytes
docs/images/ModelClassDiagram.png | Bin 27204 -> 0 bytes
docs/images/ParserClasses.png | Bin 28856 -> 0 bytes
docs/images/SeEduLogo.png | Bin 20233 -> 0 bytes
docs/images/StorageClassDiagram.png | Bin 29426 -> 0 bytes
docs/images/Ui.png | Bin 14607 -> 0 bytes
docs/images/UiClassDiagram.png | Bin 48363 -> 0 bytes
docs/images/UndoRedoState0.png | Bin 6619 -> 0 bytes
docs/images/UndoRedoState1.png | Bin 7454 -> 0 bytes
docs/images/UndoRedoState2.png | Bin 7855 -> 0 bytes
docs/images/UndoRedoState3.png | Bin 7588 -> 0 bytes
docs/images/UndoRedoState4.png | Bin 7605 -> 0 bytes
docs/images/UndoRedoState5.png | Bin 9427 -> 0 bytes
docs/images/UndoSequenceDiagram-Logic.png | Bin 18099 -> 0 bytes
docs/images/UndoSequenceDiagram-Model.png | Bin 10777 -> 0 bytes
docs/images/agenthagu.png | Bin 31227 -> 0 bytes
docs/images/amoschee.png | Bin 97614 -> 0 bytes
docs/images/arnaxx54.png | Bin 126309 -> 0 bytes
docs/images/findAlexDavidResult.png | Bin 19640 -> 0 bytes
docs/images/github-icon.png | Bin 1714 -> 0 bytes
docs/images/helpMessage.png | Bin 8435 -> 0 bytes
docs/images/johndoe.png | Bin 1961 -> 0 bytes
docs/images/maahir-garg.png | Bin 201344 -> 0 bytes
docs/images/nihalramesh12629.png | Bin 121376 -> 0 bytes
docs/images/request_access.png | Bin 11701 -> 0 bytes
docs/index.md | 19 -
docs/team/agenthagu.md | 10 -
docs/team/amoschee.md | 10 -
docs/team/arnaxx54.md | 10 -
docs/team/maahir-garg.md | 10 -
docs/team/nihalramesh12629.md | 6 -
gradle.properties | 2 -
gradle/wrapper/gradle-wrapper.jar | Bin 59203 -> 0 bytes
gradle/wrapper/gradle-wrapper.properties | 5 -
gradlew | 234 --------
gradlew.bat | 89 ---
.../java/seedu/address/AppParameters.java | 73 ---
src/main/java/seedu/address/Main.java | 41 --
src/main/java/seedu/address/MainApp.java | 186 ------
.../seedu/address/commons/core/Config.java | 66 --
.../address/commons/core/GuiSettings.java | 82 ---
.../address/commons/core/LogsCenter.java | 106 ----
.../seedu/address/commons/core/Version.java | 121 ----
.../address/commons/core/index/Index.java | 69 ---
.../exceptions/DataLoadingException.java | 11 -
.../exceptions/IllegalValueException.java | 21 -
.../seedu/address/commons/util/AppUtil.java | 42 --
.../address/commons/util/CollectionUtil.java | 35 --
.../address/commons/util/ConfigUtil.java | 23 -
.../seedu/address/commons/util/FileUtil.java | 83 ---
.../seedu/address/commons/util/JsonUtil.java | 144 -----
.../address/commons/util/StringUtil.java | 68 ---
.../address/commons/util/ToStringBuilder.java | 53 --
src/main/java/seedu/address/logic/Logic.java | 50 --
.../seedu/address/logic/LogicManager.java | 88 ---
.../java/seedu/address/logic/Messages.java | 51 --
.../address/logic/commands/AddCommand.java | 85 ---
.../logic/commands/AddStudentCommand.java | 93 ---
.../logic/commands/AddTeacherCommand.java | 92 ---
.../address/logic/commands/ClearCommand.java | 44 --
.../seedu/address/logic/commands/Command.java | 20 -
.../address/logic/commands/CommandResult.java | 82 ---
.../address/logic/commands/DeleteCommand.java | 69 ---
.../address/logic/commands/EditCommand.java | 242 --------
.../address/logic/commands/ExitCommand.java | 19 -
.../address/logic/commands/FindCommand.java | 59 --
.../address/logic/commands/HelpCommand.java | 21 -
.../address/logic/commands/ListCommand.java | 24 -
.../address/logic/commands/SortCommand.java | 52 --
.../commands/exceptions/CommandException.java | 17 -
.../logic/parser/AddCommandParser.java | 61 --
.../logic/parser/AddStudentCommandParser.java | 105 ----
.../logic/parser/AddTeacherCommandParser.java | 71 ---
.../logic/parser/AddressBookParser.java | 98 ---
.../logic/parser/ArgumentMultimap.java | 78 ---
.../logic/parser/ArgumentTokenizer.java | 148 -----
.../logic/parser/ClearCommandParser.java | 36 --
.../seedu/address/logic/parser/CliSyntax.java | 18 -
.../logic/parser/DeleteCommandParser.java | 29 -
.../logic/parser/EditCommandParser.java | 85 ---
.../logic/parser/FindCommandParser.java | 40 --
.../seedu/address/logic/parser/Parser.java | 16 -
.../address/logic/parser/ParserUtil.java | 180 ------
.../seedu/address/logic/parser/Prefix.java | 42 --
.../logic/parser/SortCommandParser.java | 26 -
.../parser/exceptions/ParseException.java | 17 -
.../java/seedu/address/model/AddressBook.java | 143 -----
src/main/java/seedu/address/model/Model.java | 90 ---
.../seedu/address/model/ModelManager.java | 163 -----
.../address/model/ReadOnlyAddressBook.java | 17 -
.../address/model/ReadOnlyUserPrefs.java | 16 -
.../java/seedu/address/model/UserPrefs.java | 88 ---
.../seedu/address/model/person/Address.java | 65 --
.../AddressContainsKeywordsPredicate.java | 45 --
.../seedu/address/model/person/Email.java | 79 ---
.../EmailContainsKeywordsPredicate.java | 43 --
.../seedu/address/model/person/Gender.java | 61 --
.../java/seedu/address/model/person/Name.java | 67 ---
.../person/NameContainsKeywordsPredicate.java | 44 --
.../seedu/address/model/person/Person.java | 121 ----
.../PersonContainsKeywordsPredicate.java | 118 ----
.../seedu/address/model/person/Phone.java | 61 --
.../PhoneContainsKeywordsPredicate.java | 44 --
.../seedu/address/model/person/Student.java | 93 ---
.../seedu/address/model/person/Subject.java | 65 --
.../person/TagContainsKeywordsPredicate.java | 45 --
.../seedu/address/model/person/Teacher.java | 115 ----
.../model/person/UniquePersonList.java | 150 -----
.../exceptions/DuplicatePersonException.java | 11 -
.../exceptions/PersonNotFoundException.java | 6 -
.../java/seedu/address/model/tag/Tag.java | 62 --
.../address/model/util/SampleDataUtil.java | 69 ---
.../address/storage/AddressBookStorage.java | 45 --
.../address/storage/JsonAdaptedPerson.java | 109 ----
.../seedu/address/storage/JsonAdaptedTag.java | 48 --
.../storage/JsonAddressBookStorage.java | 80 ---
.../storage/JsonSerializableAddressBook.java | 60 --
.../address/storage/JsonUserPrefsStorage.java | 47 --
.../java/seedu/address/storage/Storage.java | 32 -
.../seedu/address/storage/StorageManager.java | 78 ---
.../address/storage/UserPrefsStorage.java | 36 --
.../java/seedu/address/ui/CommandBox.java | 85 ---
.../java/seedu/address/ui/HelpWindow.java | 102 ----
.../java/seedu/address/ui/MainWindow.java | 196 ------
.../java/seedu/address/ui/PersonCard.java | 59 --
.../seedu/address/ui/PersonListPanel.java | 49 --
.../java/seedu/address/ui/ResultDisplay.java | 28 -
.../seedu/address/ui/StatusBarFooter.java | 28 -
src/main/java/seedu/address/ui/Ui.java | 13 -
src/main/java/seedu/address/ui/UiManager.java | 88 ---
src/main/java/seedu/address/ui/UiPart.java | 88 ---
src/main/resources/images/address_book_32.png | Bin 4214 -> 0 bytes
src/main/resources/images/calendar.png | Bin 1215 -> 0 bytes
src/main/resources/images/clock.png | Bin 13751 -> 0 bytes
src/main/resources/images/fail.png | Bin 20783 -> 0 bytes
src/main/resources/images/help_icon.png | Bin 31256 -> 0 bytes
src/main/resources/images/info_icon.png | Bin 5424 -> 0 bytes
src/main/resources/view/CommandBox.fxml | 9 -
src/main/resources/view/DarkTheme.css | 352 -----------
src/main/resources/view/Extensions.css | 20 -
src/main/resources/view/HelpWindow.css | 19 -
src/main/resources/view/HelpWindow.fxml | 44 --
src/main/resources/view/MainWindow.fxml | 60 --
src/main/resources/view/PersonListCard.fxml | 36 --
src/main/resources/view/PersonListPanel.fxml | 8 -
src/main/resources/view/ResultDisplay.fxml | 9 -
src/main/resources/view/StatusBarFooter.fxml | 12 -
src/test/data/ConfigUtilTest/EmptyConfig.json | 3 -
.../ConfigUtilTest/ExtraValuesConfig.json | 5 -
.../ConfigUtilTest/NotJsonFormatConfig.json | 1 -
.../data/ConfigUtilTest/TypicalConfig.json | 4 -
.../invalidAndValidPersonAddressBook.json | 13 -
.../invalidPersonAddressBook.json | 8 -
.../notJsonFormatAddressBook.json | 1 -
.../duplicatePersonAddressBook.json | 14 -
.../invalidPersonAddressBook.json | 8 -
.../typicalPersonsAddressBook.json | 46 --
.../EmptyUserPrefs.json | 3 -
.../ExtraValuesUserPref.json | 13 -
.../NotJsonFormatUserPrefs.json | 1 -
.../TypicalUserPref.json | 11 -
.../java/seedu/address/AppParametersTest.java | 89 ---
.../address/commons/core/ConfigTest.java | 27 -
.../address/commons/core/GuiSettingsTest.java | 16 -
.../address/commons/core/VersionTest.java | 135 -----
.../address/commons/core/index/IndexTest.java | 67 ---
.../address/commons/util/AppUtilTest.java | 36 --
.../commons/util/CollectionUtilTest.java | 108 ----
.../address/commons/util/ConfigUtilTest.java | 116 ----
.../address/commons/util/FileUtilTest.java | 23 -
.../address/commons/util/JsonUtilTest.java | 45 --
.../address/commons/util/StringUtilTest.java | 143 -----
.../seedu/address/logic/LogicManagerTest.java | 175 ------
.../commands/AddCommandIntegrationTest.java | 48 --
.../logic/commands/AddCommandTest.java | 210 -------
.../logic/commands/AddStudentCommandTest.java | 213 -------
.../logic/commands/ClearCommandTest.java | 37 --
.../logic/commands/CommandResultTest.java | 63 --
.../logic/commands/CommandTestUtil.java | 183 ------
.../logic/commands/DeleteCommandTest.java | 120 ----
.../logic/commands/EditCommandTest.java | 184 ------
.../commands/EditPersonDescriptorTest.java | 71 ---
.../logic/commands/ExitCommandTest.java | 20 -
.../logic/commands/FindCommandTest.java | 199 ------
.../logic/commands/HelpCommandTest.java | 20 -
.../logic/commands/ListCommandTest.java | 39 --
.../logic/commands/SortCommandTest.java | 53 --
.../logic/parser/AddCommandParserTest.java | 196 ------
.../parser/AddStudentCommandParserTest.java | 163 -----
.../parser/AddTeacherCommandParserTest.java | 159 -----
.../logic/parser/AddressBookParserTest.java | 119 ----
.../logic/parser/ArgumentTokenizerTest.java | 150 -----
.../logic/parser/CommandParserTestUtil.java | 39 --
.../logic/parser/DeleteCommandParserTest.java | 32 -
.../logic/parser/EditCommandParserTest.java | 208 -------
.../logic/parser/FindCommandParserTest.java | 85 ---
.../address/logic/parser/ParserUtilTest.java | 196 ------
.../logic/parser/SortCommandParserTest.java | 34 --
.../seedu/address/model/AddressBookTest.java | 108 ----
.../seedu/address/model/ModelManagerTest.java | 132 ----
.../seedu/address/model/UserPrefsTest.java | 21 -
.../AddressContainsKeywordsPredicateTest.java | 81 ---
.../address/model/person/AddressTest.java | 56 --
.../EmailContainsKeywordsPredicateTest.java | 89 ---
.../seedu/address/model/person/EmailTest.java | 88 ---
.../NameContainsKeywordsPredicateTest.java | 85 ---
.../seedu/address/model/person/NameTest.java | 60 --
.../PersonContainsKeywordsPredicateTest.java | 160 -----
.../address/model/person/PersonTest.java | 99 ---
.../PhoneContainsKeywordsPredicateTest.java | 89 ---
.../seedu/address/model/person/PhoneTest.java | 60 --
.../address/model/person/StudentTest.java | 62 --
.../address/model/person/SubjectTest.java | 72 ---
.../TagContainsKeywordsPredicateTest.java | 85 ---
.../address/model/person/TeacherTest.java | 141 -----
.../model/person/UniquePersonListTest.java | 175 ------
.../java/seedu/address/model/tag/TagTest.java | 26 -
.../storage/JsonAdaptedPersonTest.java | 110 ----
.../storage/JsonAddressBookStorageTest.java | 110 ----
.../JsonSerializableAddressBookTest.java | 47 --
.../storage/JsonUserPrefsStorageTest.java | 123 ----
.../address/storage/StorageManagerTest.java | 68 ---
.../address/testutil/AddressBookBuilder.java | 34 --
.../java/seedu/address/testutil/Assert.java | 34 --
.../testutil/EditPersonDescriptorBuilder.java | 87 ---
.../seedu/address/testutil/PersonBuilder.java | 96 ---
.../seedu/address/testutil/PersonUtil.java | 62 --
.../testutil/SerializableTestClass.java | 72 ---
.../address/testutil/StudentBuilder.java | 120 ----
.../address/testutil/TeacherBuilder.java | 133 ----
.../java/seedu/address/testutil/TestUtil.java | 55 --
.../address/testutil/TypicalIndexes.java | 12 -
.../address/testutil/TypicalPersons.java | 94 ---
.../address/testutil/TypicalTeachers.java | 86 ---
.../java/seedu/address/ui/TestFxmlObject.java | 45 --
.../java/seedu/address/ui/UiPartTest.java | 114 ----
.../view/UiPartTest/invalidFile.fxml | 1 -
.../resources/view/UiPartTest/validFile.fxml | 4 -
.../view/UiPartTest/validFileWithFxRoot.fxml | 6 -
311 files changed, 18568 deletions(-)
delete mode 100644 .gitattributes
delete mode 100755 .github/check-eof-newline.sh
delete mode 100755 .github/check-line-endings.sh
delete mode 100755 .github/check-trailing-whitespace.sh
delete mode 100755 .github/run-checks.sh
delete mode 100644 .github/workflows/gradle.yml
delete mode 100644 .gitignore
delete mode 100644 LICENSE
delete mode 100644 README.md
delete mode 100644 build.gradle
delete mode 100644 config/checkstyle/checkstyle.xml
delete mode 100644 config/checkstyle/suppressions.xml
delete mode 100644 copyright.txt
delete mode 100644 docs/AboutUs.md
delete mode 100644 docs/Configuration.md
delete mode 100644 docs/DevOps.md
delete mode 100644 docs/DeveloperGuide.md
delete mode 100644 docs/Documentation.md
delete mode 100644 docs/Gemfile
delete mode 100644 docs/Gemfile.lock
delete mode 100644 docs/Logging.md
delete mode 100644 docs/SettingUp.md
delete mode 100644 docs/Testing.md
delete mode 100644 docs/UserGuide.md
delete mode 100644 docs/_config.yml
delete mode 100644 docs/_data/projects.yml
delete mode 100644 docs/_includes/custom-head.html
delete mode 100644 docs/_includes/head.html
delete mode 100644 docs/_includes/header.html
delete mode 100644 docs/_layouts/alt-page.html
delete mode 100644 docs/_layouts/default.html
delete mode 100644 docs/_layouts/page.html
delete mode 100644 docs/_sass/minima/_base.scss
delete mode 100644 docs/_sass/minima/_layout.scss
delete mode 100644 docs/_sass/minima/custom-mixins.scss
delete mode 100644 docs/_sass/minima/custom-styles.scss
delete mode 100644 docs/_sass/minima/custom-variables.scss
delete mode 100644 docs/_sass/minima/initialize.scss
delete mode 100644 docs/_sass/minima/skins/classic.scss
delete mode 100644 docs/_sass/minima/skins/solarized-dark.scss
delete mode 100644 docs/_sass/minima/skins/solarized.scss
delete mode 100644 docs/assets/css/style.scss
delete mode 100644 docs/diagrams/ArchitectureDiagram.puml
delete mode 100644 docs/diagrams/ArchitectureSequenceDiagram.puml
delete mode 100644 docs/diagrams/BetterModelClassDiagram.puml
delete mode 100644 docs/diagrams/CommitActivityDiagram.puml
delete mode 100644 docs/diagrams/ComponentManagers.puml
delete mode 100644 docs/diagrams/DeleteSequenceDiagram.puml
delete mode 100644 docs/diagrams/LogicClassDiagram.puml
delete mode 100644 docs/diagrams/ModelClassDiagram.puml
delete mode 100644 docs/diagrams/ParserClasses.puml
delete mode 100644 docs/diagrams/StorageClassDiagram.puml
delete mode 100644 docs/diagrams/UiClassDiagram.puml
delete mode 100644 docs/diagrams/UndoRedoState0.puml
delete mode 100644 docs/diagrams/UndoRedoState1.puml
delete mode 100644 docs/diagrams/UndoRedoState2.puml
delete mode 100644 docs/diagrams/UndoRedoState3.puml
delete mode 100644 docs/diagrams/UndoRedoState4.puml
delete mode 100644 docs/diagrams/UndoRedoState5.puml
delete mode 100644 docs/diagrams/UndoSequenceDiagram-Logic.puml
delete mode 100644 docs/diagrams/UndoSequenceDiagram-Model.puml
delete mode 100644 docs/diagrams/add-remark/ParserClass.puml
delete mode 100644 docs/diagrams/add-remark/RemarkClass.puml
delete mode 100644 docs/diagrams/style.puml
delete mode 100644 docs/diagrams/tracing/LogicSequenceDiagram.puml
delete mode 100644 docs/images/ArchitectureDiagram.png
delete mode 100644 docs/images/ArchitectureSequenceDiagram.png
delete mode 100644 docs/images/BetterModelClassDiagram.png
delete mode 100644 docs/images/CommitActivityDiagram.png
delete mode 100644 docs/images/ComponentManagers.png
delete mode 100644 docs/images/DeleteSequenceDiagram.png
delete mode 100644 docs/images/LogicClassDiagram.png
delete mode 100644 docs/images/LogicStorageDIP.png
delete mode 100644 docs/images/ModelClassDiagram.png
delete mode 100644 docs/images/ParserClasses.png
delete mode 100644 docs/images/SeEduLogo.png
delete mode 100644 docs/images/StorageClassDiagram.png
delete mode 100644 docs/images/Ui.png
delete mode 100644 docs/images/UiClassDiagram.png
delete mode 100644 docs/images/UndoRedoState0.png
delete mode 100644 docs/images/UndoRedoState1.png
delete mode 100644 docs/images/UndoRedoState2.png
delete mode 100644 docs/images/UndoRedoState3.png
delete mode 100644 docs/images/UndoRedoState4.png
delete mode 100644 docs/images/UndoRedoState5.png
delete mode 100644 docs/images/UndoSequenceDiagram-Logic.png
delete mode 100644 docs/images/UndoSequenceDiagram-Model.png
delete mode 100644 docs/images/agenthagu.png
delete mode 100644 docs/images/amoschee.png
delete mode 100644 docs/images/arnaxx54.png
delete mode 100644 docs/images/findAlexDavidResult.png
delete mode 100755 docs/images/github-icon.png
delete mode 100644 docs/images/helpMessage.png
delete mode 100644 docs/images/johndoe.png
delete mode 100644 docs/images/maahir-garg.png
delete mode 100644 docs/images/nihalramesh12629.png
delete mode 100644 docs/images/request_access.png
delete mode 100644 docs/index.md
delete mode 100644 docs/team/agenthagu.md
delete mode 100644 docs/team/amoschee.md
delete mode 100644 docs/team/arnaxx54.md
delete mode 100644 docs/team/maahir-garg.md
delete mode 100644 docs/team/nihalramesh12629.md
delete mode 100644 gradle.properties
delete mode 100644 gradle/wrapper/gradle-wrapper.jar
delete mode 100644 gradle/wrapper/gradle-wrapper.properties
delete mode 100755 gradlew
delete mode 100644 gradlew.bat
delete mode 100644 src/main/java/seedu/address/AppParameters.java
delete mode 100644 src/main/java/seedu/address/Main.java
delete mode 100644 src/main/java/seedu/address/MainApp.java
delete mode 100644 src/main/java/seedu/address/commons/core/Config.java
delete mode 100644 src/main/java/seedu/address/commons/core/GuiSettings.java
delete mode 100644 src/main/java/seedu/address/commons/core/LogsCenter.java
delete mode 100644 src/main/java/seedu/address/commons/core/Version.java
delete mode 100644 src/main/java/seedu/address/commons/core/index/Index.java
delete mode 100644 src/main/java/seedu/address/commons/exceptions/DataLoadingException.java
delete mode 100644 src/main/java/seedu/address/commons/exceptions/IllegalValueException.java
delete mode 100644 src/main/java/seedu/address/commons/util/AppUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/CollectionUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/ConfigUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/FileUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/JsonUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/StringUtil.java
delete mode 100644 src/main/java/seedu/address/commons/util/ToStringBuilder.java
delete mode 100644 src/main/java/seedu/address/logic/Logic.java
delete mode 100644 src/main/java/seedu/address/logic/LogicManager.java
delete mode 100644 src/main/java/seedu/address/logic/Messages.java
delete mode 100644 src/main/java/seedu/address/logic/commands/AddCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/AddStudentCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/AddTeacherCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/ClearCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/Command.java
delete mode 100644 src/main/java/seedu/address/logic/commands/CommandResult.java
delete mode 100644 src/main/java/seedu/address/logic/commands/DeleteCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/EditCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/ExitCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/FindCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/HelpCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/ListCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/SortCommand.java
delete mode 100644 src/main/java/seedu/address/logic/commands/exceptions/CommandException.java
delete mode 100644 src/main/java/seedu/address/logic/parser/AddCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/AddStudentCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/AddTeacherCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/AddressBookParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/ArgumentMultimap.java
delete mode 100644 src/main/java/seedu/address/logic/parser/ArgumentTokenizer.java
delete mode 100644 src/main/java/seedu/address/logic/parser/ClearCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/CliSyntax.java
delete mode 100644 src/main/java/seedu/address/logic/parser/DeleteCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/EditCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/FindCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/Parser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/ParserUtil.java
delete mode 100644 src/main/java/seedu/address/logic/parser/Prefix.java
delete mode 100644 src/main/java/seedu/address/logic/parser/SortCommandParser.java
delete mode 100644 src/main/java/seedu/address/logic/parser/exceptions/ParseException.java
delete mode 100644 src/main/java/seedu/address/model/AddressBook.java
delete mode 100644 src/main/java/seedu/address/model/Model.java
delete mode 100644 src/main/java/seedu/address/model/ModelManager.java
delete mode 100644 src/main/java/seedu/address/model/ReadOnlyAddressBook.java
delete mode 100644 src/main/java/seedu/address/model/ReadOnlyUserPrefs.java
delete mode 100644 src/main/java/seedu/address/model/UserPrefs.java
delete mode 100644 src/main/java/seedu/address/model/person/Address.java
delete mode 100644 src/main/java/seedu/address/model/person/AddressContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Email.java
delete mode 100644 src/main/java/seedu/address/model/person/EmailContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Gender.java
delete mode 100644 src/main/java/seedu/address/model/person/Name.java
delete mode 100644 src/main/java/seedu/address/model/person/NameContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Person.java
delete mode 100644 src/main/java/seedu/address/model/person/PersonContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Phone.java
delete mode 100644 src/main/java/seedu/address/model/person/PhoneContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Student.java
delete mode 100644 src/main/java/seedu/address/model/person/Subject.java
delete mode 100644 src/main/java/seedu/address/model/person/TagContainsKeywordsPredicate.java
delete mode 100644 src/main/java/seedu/address/model/person/Teacher.java
delete mode 100644 src/main/java/seedu/address/model/person/UniquePersonList.java
delete mode 100644 src/main/java/seedu/address/model/person/exceptions/DuplicatePersonException.java
delete mode 100644 src/main/java/seedu/address/model/person/exceptions/PersonNotFoundException.java
delete mode 100644 src/main/java/seedu/address/model/tag/Tag.java
delete mode 100644 src/main/java/seedu/address/model/util/SampleDataUtil.java
delete mode 100644 src/main/java/seedu/address/storage/AddressBookStorage.java
delete mode 100644 src/main/java/seedu/address/storage/JsonAdaptedPerson.java
delete mode 100644 src/main/java/seedu/address/storage/JsonAdaptedTag.java
delete mode 100644 src/main/java/seedu/address/storage/JsonAddressBookStorage.java
delete mode 100644 src/main/java/seedu/address/storage/JsonSerializableAddressBook.java
delete mode 100644 src/main/java/seedu/address/storage/JsonUserPrefsStorage.java
delete mode 100644 src/main/java/seedu/address/storage/Storage.java
delete mode 100644 src/main/java/seedu/address/storage/StorageManager.java
delete mode 100644 src/main/java/seedu/address/storage/UserPrefsStorage.java
delete mode 100644 src/main/java/seedu/address/ui/CommandBox.java
delete mode 100644 src/main/java/seedu/address/ui/HelpWindow.java
delete mode 100644 src/main/java/seedu/address/ui/MainWindow.java
delete mode 100644 src/main/java/seedu/address/ui/PersonCard.java
delete mode 100644 src/main/java/seedu/address/ui/PersonListPanel.java
delete mode 100644 src/main/java/seedu/address/ui/ResultDisplay.java
delete mode 100644 src/main/java/seedu/address/ui/StatusBarFooter.java
delete mode 100644 src/main/java/seedu/address/ui/Ui.java
delete mode 100644 src/main/java/seedu/address/ui/UiManager.java
delete mode 100644 src/main/java/seedu/address/ui/UiPart.java
delete mode 100644 src/main/resources/images/address_book_32.png
delete mode 100644 src/main/resources/images/calendar.png
delete mode 100644 src/main/resources/images/clock.png
delete mode 100644 src/main/resources/images/fail.png
delete mode 100644 src/main/resources/images/help_icon.png
delete mode 100644 src/main/resources/images/info_icon.png
delete mode 100644 src/main/resources/view/CommandBox.fxml
delete mode 100644 src/main/resources/view/DarkTheme.css
delete mode 100644 src/main/resources/view/Extensions.css
delete mode 100644 src/main/resources/view/HelpWindow.css
delete mode 100644 src/main/resources/view/HelpWindow.fxml
delete mode 100644 src/main/resources/view/MainWindow.fxml
delete mode 100644 src/main/resources/view/PersonListCard.fxml
delete mode 100644 src/main/resources/view/PersonListPanel.fxml
delete mode 100644 src/main/resources/view/ResultDisplay.fxml
delete mode 100644 src/main/resources/view/StatusBarFooter.fxml
delete mode 100644 src/test/data/ConfigUtilTest/EmptyConfig.json
delete mode 100644 src/test/data/ConfigUtilTest/ExtraValuesConfig.json
delete mode 100644 src/test/data/ConfigUtilTest/NotJsonFormatConfig.json
delete mode 100644 src/test/data/ConfigUtilTest/TypicalConfig.json
delete mode 100644 src/test/data/JsonAddressBookStorageTest/invalidAndValidPersonAddressBook.json
delete mode 100644 src/test/data/JsonAddressBookStorageTest/invalidPersonAddressBook.json
delete mode 100644 src/test/data/JsonAddressBookStorageTest/notJsonFormatAddressBook.json
delete mode 100644 src/test/data/JsonSerializableAddressBookTest/duplicatePersonAddressBook.json
delete mode 100644 src/test/data/JsonSerializableAddressBookTest/invalidPersonAddressBook.json
delete mode 100644 src/test/data/JsonSerializableAddressBookTest/typicalPersonsAddressBook.json
delete mode 100644 src/test/data/JsonUserPrefsStorageTest/EmptyUserPrefs.json
delete mode 100644 src/test/data/JsonUserPrefsStorageTest/ExtraValuesUserPref.json
delete mode 100644 src/test/data/JsonUserPrefsStorageTest/NotJsonFormatUserPrefs.json
delete mode 100644 src/test/data/JsonUserPrefsStorageTest/TypicalUserPref.json
delete mode 100644 src/test/java/seedu/address/AppParametersTest.java
delete mode 100644 src/test/java/seedu/address/commons/core/ConfigTest.java
delete mode 100644 src/test/java/seedu/address/commons/core/GuiSettingsTest.java
delete mode 100644 src/test/java/seedu/address/commons/core/VersionTest.java
delete mode 100644 src/test/java/seedu/address/commons/core/index/IndexTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/AppUtilTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/CollectionUtilTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/ConfigUtilTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/FileUtilTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/JsonUtilTest.java
delete mode 100644 src/test/java/seedu/address/commons/util/StringUtilTest.java
delete mode 100644 src/test/java/seedu/address/logic/LogicManagerTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/AddCommandIntegrationTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/AddCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/AddStudentCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/ClearCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/CommandResultTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/CommandTestUtil.java
delete mode 100644 src/test/java/seedu/address/logic/commands/DeleteCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/EditCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/EditPersonDescriptorTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/ExitCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/FindCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/HelpCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/ListCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/commands/SortCommandTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/AddCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/AddStudentCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/AddTeacherCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/AddressBookParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/ArgumentTokenizerTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/CommandParserTestUtil.java
delete mode 100644 src/test/java/seedu/address/logic/parser/DeleteCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/EditCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/FindCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/ParserUtilTest.java
delete mode 100644 src/test/java/seedu/address/logic/parser/SortCommandParserTest.java
delete mode 100644 src/test/java/seedu/address/model/AddressBookTest.java
delete mode 100644 src/test/java/seedu/address/model/ModelManagerTest.java
delete mode 100644 src/test/java/seedu/address/model/UserPrefsTest.java
delete mode 100644 src/test/java/seedu/address/model/person/AddressContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/AddressTest.java
delete mode 100644 src/test/java/seedu/address/model/person/EmailContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/EmailTest.java
delete mode 100644 src/test/java/seedu/address/model/person/NameContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/NameTest.java
delete mode 100644 src/test/java/seedu/address/model/person/PersonContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/PersonTest.java
delete mode 100644 src/test/java/seedu/address/model/person/PhoneContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/PhoneTest.java
delete mode 100644 src/test/java/seedu/address/model/person/StudentTest.java
delete mode 100644 src/test/java/seedu/address/model/person/SubjectTest.java
delete mode 100644 src/test/java/seedu/address/model/person/TagContainsKeywordsPredicateTest.java
delete mode 100644 src/test/java/seedu/address/model/person/TeacherTest.java
delete mode 100644 src/test/java/seedu/address/model/person/UniquePersonListTest.java
delete mode 100644 src/test/java/seedu/address/model/tag/TagTest.java
delete mode 100644 src/test/java/seedu/address/storage/JsonAdaptedPersonTest.java
delete mode 100644 src/test/java/seedu/address/storage/JsonAddressBookStorageTest.java
delete mode 100644 src/test/java/seedu/address/storage/JsonSerializableAddressBookTest.java
delete mode 100644 src/test/java/seedu/address/storage/JsonUserPrefsStorageTest.java
delete mode 100644 src/test/java/seedu/address/storage/StorageManagerTest.java
delete mode 100644 src/test/java/seedu/address/testutil/AddressBookBuilder.java
delete mode 100644 src/test/java/seedu/address/testutil/Assert.java
delete mode 100644 src/test/java/seedu/address/testutil/EditPersonDescriptorBuilder.java
delete mode 100644 src/test/java/seedu/address/testutil/PersonBuilder.java
delete mode 100644 src/test/java/seedu/address/testutil/PersonUtil.java
delete mode 100644 src/test/java/seedu/address/testutil/SerializableTestClass.java
delete mode 100644 src/test/java/seedu/address/testutil/StudentBuilder.java
delete mode 100644 src/test/java/seedu/address/testutil/TeacherBuilder.java
delete mode 100644 src/test/java/seedu/address/testutil/TestUtil.java
delete mode 100644 src/test/java/seedu/address/testutil/TypicalIndexes.java
delete mode 100644 src/test/java/seedu/address/testutil/TypicalPersons.java
delete mode 100644 src/test/java/seedu/address/testutil/TypicalTeachers.java
delete mode 100644 src/test/java/seedu/address/ui/TestFxmlObject.java
delete mode 100644 src/test/java/seedu/address/ui/UiPartTest.java
delete mode 100644 src/test/resources/view/UiPartTest/invalidFile.fxml
delete mode 100644 src/test/resources/view/UiPartTest/validFile.fxml
delete mode 100644 src/test/resources/view/UiPartTest/validFileWithFxRoot.fxml
diff --git a/.gitattributes b/.gitattributes
deleted file mode 100644
index d72fd520b1c..00000000000
--- a/.gitattributes
+++ /dev/null
@@ -1 +0,0 @@
-*.pdf binary
diff --git a/.github/check-eof-newline.sh b/.github/check-eof-newline.sh
deleted file mode 100755
index b771f3988dd..00000000000
--- a/.github/check-eof-newline.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-# Checks that all text files end with a newline.
-
-ret=0
-
-# Preserve filename with spaces by only splitting on newlines.
-IFS='
-'
-
-for filename in $(git grep --cached -I -l -e '' -- ':/'); do
- if [ "$(tail -c 1 "./$filename")" != '' ]; then
- line="$(wc -l "./$filename" | cut -d' ' -f1)"
- echo "ERROR:$filename:$line: no newline at EOF."
- ret=1
- fi
-done
-
-exit $ret
diff --git a/.github/check-line-endings.sh b/.github/check-line-endings.sh
deleted file mode 100755
index 3de67ea87f6..00000000000
--- a/.github/check-line-endings.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-# Checks for prohibited line endings.
-# Prohibited line endings: \r\n
-
-git grep --cached -I -n --no-color -P '\r$' -- ':/' |
-awk '
- BEGIN {
- FS = ":"
- OFS = ":"
- ret = 0
- }
- {
- ret = 1
- print "ERROR", $1, $2, " prohibited \\r\\n line ending, use \\n instead."
- }
- END {
- exit ret
- }
-'
diff --git a/.github/check-trailing-whitespace.sh b/.github/check-trailing-whitespace.sh
deleted file mode 100755
index 33841caa81f..00000000000
--- a/.github/check-trailing-whitespace.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-# Checks for trailing whitespace
-
-git grep --cached -I -n --no-color -P '[ \t]+$' -- ':/' |
-awk '
- BEGIN {
- FS = ":"
- OFS = ":"
- ret = 0
- }
- {
- # Only warn for markdown files (*.md) to accomodate text editors
- # which do not properly handle trailing whitespace.
- # (e.g. GitHub web editor)
- if ($1 ~ /\.md$/) {
- severity = "WARN"
- } else {
- severity = "ERROR"
- ret = 1
- }
- print severity, $1, $2, " trailing whitespace."
- }
- END {
- exit ret
- }
-'
diff --git a/.github/run-checks.sh b/.github/run-checks.sh
deleted file mode 100755
index 7aad1e96220..00000000000
--- a/.github/run-checks.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-# Runs all check-* scripts, and returns a non-zero exit code if any of them fail.
-
-dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) &&
-ret=0 &&
-for checkscript in "$dir"/check-*; do
- if ! "$checkscript"; then
- ret=1
- fi
-done
-exit $ret
diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml
deleted file mode 100644
index 3f454a0be30..00000000000
--- a/.github/workflows/gradle.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-name: Java CI
-
-on: [push, pull_request]
-
-jobs:
- build:
- strategy:
- matrix:
- platform: [ubuntu-latest, macos-latest, windows-latest]
- runs-on: ${{ matrix.platform }}
-
- steps:
- - name: Set up repository
- uses: actions/checkout@main
-
- - name: Set up repository
- uses: actions/checkout@main
- with:
- ref: master
-
- - name: Merge to master
- run: git checkout --progress --force ${{ github.sha }}
-
- - name: Run repository-wide tests
- if: runner.os == 'Linux'
- working-directory: ${{ github.workspace }}/.github
- run: ./run-checks.sh
-
- - name: Validate Gradle Wrapper
- uses: gradle/actions/wrapper-validation@v3
-
- - name: Setup JDK 17
- uses: actions/setup-java@v4
- with:
- distribution: 'zulu'
- java-version: '17'
- java-package: jdk+fx
-
- - name: Build and check with Gradle
- run: ./gradlew check coverage
-
- - name: Upload coverage reports to Codecov
- if: runner.os == 'Linux'
- uses: codecov/codecov-action@v4
- with:
- token: ${{ secrets.CODECOV_TOKEN }}
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 284c4ca7cd9..00000000000
--- a/.gitignore
+++ /dev/null
@@ -1,23 +0,0 @@
-# Gradle build files
-/.gradle/
-/build/
-src/main/resources/docs/
-
-# IDEA files
-/.idea/
-/out/
-/*.iml
-
-# Storage/log files
-/data/
-/config.json
-/preferences.json
-/*.log.*
-hs_err_pid[0-9]*.log
-
-# Test sandbox files
-src/test/data/sandbox/
-
-# MacOS custom attributes files created by Finder
-.DS_Store
-docs/_site/
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 39b3478982c..00000000000
--- a/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2016 Software Engineering Education - FOSS Resources
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/README.md b/README.md
deleted file mode 100644
index 5b2ff043bd9..00000000000
--- a/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[](https://github.com/AY2425S1-CS2103T-F12-2/tp/actions)
-[](https://codecov.io/gh/AY2425S1-CS2103T-F12-2/tp)
-
-
-
-* This is a brownfield team project done by Software Engineering students from the National University of Singapore (NUS).
-* The project has adapted an ongoing software project for a desktop application (called AddressBook) used for managing contact details.
-* It is written in OOP fashion.
-* It is named EduConnect.
-* It now functions as a tool for teachers to manage student details from different classes.
-* For the detailed documentation of this project, see the [EduConnect Product Website](https://ay2425s1-cs2103t-f12-2.github.io/tp/).
-* This project is based on the AddressBook-Level3 project created by the [SE-EDU initiative](https://se-education.org).
diff --git a/build.gradle b/build.gradle
deleted file mode 100644
index 0db3743584e..00000000000
--- a/build.gradle
+++ /dev/null
@@ -1,72 +0,0 @@
-plugins {
- id 'java'
- id 'checkstyle'
- id 'com.github.johnrengelman.shadow' version '7.1.2'
- id 'application'
- id 'jacoco'
-}
-
-mainClassName = 'seedu.address.Main'
-
-sourceCompatibility = JavaVersion.VERSION_17
-targetCompatibility = JavaVersion.VERSION_17
-
-repositories {
- mavenCentral()
- maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
-}
-
-checkstyle {
- toolVersion = '10.2'
-}
-
-test {
- useJUnitPlatform()
- finalizedBy jacocoTestReport
-}
-
-task coverage(type: JacocoReport) {
- sourceDirectories.from files(sourceSets.main.allSource.srcDirs)
- classDirectories.from files(sourceSets.main.output)
- executionData.from files(jacocoTestReport.executionData)
- afterEvaluate {
- classDirectories.from files(classDirectories.files.collect {
- fileTree(dir: it, exclude: ['**/*.jar'])
- })
- }
- reports {
- html.required = true
- xml.required = true
- }
-}
-
-dependencies {
- String jUnitVersion = '5.4.0'
- String javaFxVersion = '17.0.7'
-
- implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'win'
- implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'mac'
- implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'linux'
- implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'win'
- implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'mac'
- implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'linux'
- implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'win'
- implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'mac'
- implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'linux'
- implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'win'
- implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'mac'
- implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'linux'
-
- implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.7.0'
- implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.7.4'
-
- testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: jUnitVersion
-
- testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: jUnitVersion
-}
-
-shadowJar {
- archiveFileName = 'addressbook.jar'
-}
-
-defaultTasks 'clean', 'test'
diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml
deleted file mode 100644
index eb761a9b9a7..00000000000
--- a/config/checkstyle/checkstyle.xml
+++ /dev/null
@@ -1,434 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/config/checkstyle/suppressions.xml b/config/checkstyle/suppressions.xml
deleted file mode 100644
index 39efb6e4acb..00000000000
--- a/config/checkstyle/suppressions.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/copyright.txt b/copyright.txt
deleted file mode 100644
index 93aa2a39ce2..00000000000
--- a/copyright.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-Some code adapted from http://code.makery.ch/library/javafx-8-tutorial/ by Marco Jakob
-
-Copyright by Susumu Yoshida - http://www.mcdodesign.com/
-- address_book_32.png
-- AddressApp.ico
-
-Copyright by Jan Jan Kovařík - http://glyphicons.com/
-- calendar.png
-- edit.png
diff --git a/docs/AboutUs.md b/docs/AboutUs.md
deleted file mode 100644
index cf71c91d4ec..00000000000
--- a/docs/AboutUs.md
+++ /dev/null
@@ -1,56 +0,0 @@
----
-layout: page
-title: About Us
----
-
-We are a team based in the [School of Computing, National University of Singapore](https://www.comp.nus.edu.sg).
-
-You can reach us at the email `seer[at]comp.nus.edu.sg`
-
-## Project team
-
-### Garg Maahir Rajesh
-
-
-
-[[github](http://github.com/maahir-garg)]
-[[portfolio](team/johndoe.md)]
-
-* Role: Team Lead
-* Responsibilities: UI
-
-### Goel Arnav
-
-
-
-[[github](http://github.com/arnaxx54)] [[portfolio](team/johndoe.md)]
-
-* Role: Developer
-* Responsibilities: Data
-
-### Nihal Ramesh
-
-
-
-[[github](http://github.com/nihalramesh12629)]
-[[portfolio](team/johndoe.md)]
-
-* Role: Developer
-* Responsibilities: Dev Ops + Threading
-
-### Adrian Leonardo Liang
-
-
-
-[[github](http://github.com/AgentHagu)]
-[[portfolio](team/agenthagu.md)]
-
-* Role: Developer
-* Responsibilities: UI
-
-### Amos Chee Tian Ee
-
-
-
-[[github](https://github.com/amoschee)]
-[[portfolio](team/amoschee.md)]
diff --git a/docs/Configuration.md b/docs/Configuration.md
deleted file mode 100644
index 13cf0faea16..00000000000
--- a/docs/Configuration.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-layout: page
-title: Configuration guide
----
-
-Certain properties of the application can be controlled (e.g user preferences file location, logging level) through the configuration file (default: `config.json`).
diff --git a/docs/DevOps.md b/docs/DevOps.md
deleted file mode 100644
index d2fd91a6001..00000000000
--- a/docs/DevOps.md
+++ /dev/null
@@ -1,79 +0,0 @@
----
-layout: page
-title: DevOps guide
----
-
-* Table of Contents
-{:toc}
-
---------------------------------------------------------------------------------------------------------------------
-
-## Build automation
-
-This project uses Gradle for **build automation and dependency management**. **You are recommended to read [this Gradle Tutorial from the se-edu/guides](https://se-education.org/guides/tutorials/gradle.html)**.
-
-
-Given below are how to use Gradle for some important project tasks.
-
-
-* **`clean`**: Deletes the files created during the previous build tasks (e.g. files in the `build` folder).
- e.g. `./gradlew clean`
-
-* **`shadowJar`**: Uses the ShadowJar plugin to creat a fat JAR file in the `build/lib` folder, *if the current file is outdated*.
- e.g. `./gradlew shadowJar`.
-
-* **`run`**: Builds and runs the application.
- **`runShadow`**: Builds the application as a fat JAR, and then runs it.
-
-* **`checkstyleMain`**: Runs the code style check for the main code base.
- **`checkstyleTest`**: Runs the code style check for the test code base.
-
-* **`test`**: Runs all tests.
- * `./gradlew test` — Runs all tests
- * `./gradlew clean test` — Cleans the project and runs tests
-
---------------------------------------------------------------------------------------------------------------------
-
-## Continuous integration (CI)
-
-This project uses GitHub Actions for CI. The project comes with the necessary GitHub Actions configurations files (in the `.github/workflows` folder). No further setting up required.
-
-### Code coverage
-
-As part of CI, this project uses Codecov to generate coverage reports. When CI runs, it will generate code coverage data (based on the tests run by CI) and upload that data to the CodeCov website, which in turn can provide you more info about the coverage of your tests.
-
-However, because Codecov is known to run into intermittent problems (e.g., report upload fails) due to issues on the Codecov service side, the CI is configured to pass even if the Codecov task failed. Therefore, developers are advised to check the code coverage levels periodically and take corrective actions if the coverage level falls below desired levels.
-
-To enable Codecov for forks of this project, follow the steps given in [this se-edu guide](https://se-education.org/guides/tutorials/codecov.html).
-
-### Repository-wide checks
-
-In addition to running Gradle checks, CI includes some repository-wide checks. Unlike the Gradle checks which only cover files used in the build process, these repository-wide checks cover all files in the repository. They check for repository rules which are hard to enforce on development machines such as line ending requirements.
-
-These checks are implemented as POSIX shell scripts, and thus can only be run on POSIX-compliant operating systems such as macOS and Linux. To run all checks locally on these operating systems, execute the following in the repository root directory:
-
-`./config/travis/run-checks.sh`
-
-Any warnings or errors will be printed out to the console.
-
-**If adding new checks:**
-
-* Checks are implemented as executable `check-*` scripts within the `.github` directory. The `run-checks.sh` script will automatically pick up and run files named as such. That is, you can add more such files if you need and the CI will do the rest.
-
-* Check scripts should print out errors in the format `SEVERITY:FILENAME:LINE: MESSAGE`
- * SEVERITY is either ERROR or WARN.
- * FILENAME is the path to the file relative to the current directory.
- * LINE is the line of the file where the error occurred and MESSAGE is the message explaining the error.
-
-* Check scripts must exit with a non-zero exit code if any errors occur.
-
---------------------------------------------------------------------------------------------------------------------
-
-## Making a release
-
-Here are the steps to create a new release.
-
-1. Update the version number in [`MainApp.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/MainApp.java).
-1. Generate a fat JAR file using Gradle (i.e., `gradlew shadowJar`).
-1. Tag the repo with the version number. e.g. `v0.1`
-1. [Create a new release using GitHub](https://help.github.com/articles/creating-releases/). Upload the JAR file you created.
diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md
deleted file mode 100644
index 602d17672b5..00000000000
--- a/docs/DeveloperGuide.md
+++ /dev/null
@@ -1,568 +0,0 @@
----
-layout: page
-title: Developer Guide
----
-* Table of Contents
-{:toc}
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Acknowledgements**
-
-* {list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well}
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Setting up, getting started**
-
-Refer to the guide [_Setting up and getting started_](SettingUp.md).
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Design**
-
-
-
-:bulb: **Tip:** The `.puml` files used to create diagrams in this document `docs/diagrams` folder. Refer to the [_PlantUML Tutorial_ at se-edu/guides](https://se-education.org/guides/tutorials/plantUml.html) to learn how to create and edit diagrams.
-
-
-### Architecture
-
-
-
-The ***Architecture Diagram*** given above explains the high-level design of the App.
-
-Given below is a quick overview of main components and how they interact with each other.
-
-**Main components of the architecture**
-
-**`Main`** (consisting of classes [`Main`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/Main.java) and [`MainApp`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/MainApp.java)) is in charge of the app launch and shut down.
-* At app launch, it initializes the other components in the correct sequence, and connects them up with each other.
-* At shut down, it shuts down the other components and invokes cleanup methods where necessary.
-
-The bulk of the app's work is done by the following four components:
-
-* [**`UI`**](#ui-component): The UI of the App.
-* [**`Logic`**](#logic-component): The command executor.
-* [**`Model`**](#model-component): Holds the data of the App in memory.
-* [**`Storage`**](#storage-component): Reads data from, and writes data to, the hard disk.
-
-[**`Commons`**](#common-classes) represents a collection of classes used by multiple other components.
-
-**How the architecture components interact with each other**
-
-The *Sequence Diagram* below shows how the components interact with each other for the scenario where the user issues the command `delete 1`.
-
-
-
-Each of the four main components (also shown in the diagram above),
-
-* defines its *API* in an `interface` with the same name as the Component.
-* implements its functionality using a concrete `{Component Name}Manager` class (which follows the corresponding API `interface` mentioned in the previous point.
-
-For example, the `Logic` component defines its API in the `Logic.java` interface and implements its functionality using the `LogicManager.java` class which follows the `Logic` interface. Other components interact with a given component through its interface rather than the concrete class (reason: to prevent outside component's being coupled to the implementation of a component), as illustrated in the (partial) class diagram below.
-
-
-
-The sections below give more details of each component.
-
-### UI component
-
-The **API** of this component is specified in [`Ui.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/ui/Ui.java)
-
-
-
-The UI consists of a `MainWindow` that is made up of parts e.g.`CommandBox`, `ResultDisplay`, `PersonListPanel`, `StatusBarFooter` etc. All these, including the `MainWindow`, inherit from the abstract `UiPart` class which captures the commonalities between classes that represent parts of the visible GUI.
-
-The `UI` component uses the JavaFx UI framework. The layout of these UI parts are defined in matching `.fxml` files that are in the `src/main/resources/view` folder. For example, the layout of the [`MainWindow`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/ui/MainWindow.java) is specified in [`MainWindow.fxml`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/resources/view/MainWindow.fxml)
-
-The `UI` component,
-
-* executes user commands using the `Logic` component.
-* listens for changes to `Model` data so that the UI can be updated with the modified data.
-* keeps a reference to the `Logic` component, because the `UI` relies on the `Logic` to execute commands.
-* depends on some classes in the `Model` component, as it displays `Person` object residing in the `Model`.
-
-### Logic component
-
-**API** : [`Logic.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/logic/Logic.java)
-
-Here's a (partial) class diagram of the `Logic` component:
-
-
-
-The sequence diagram below illustrates the interactions within the `Logic` component, taking `execute("delete 1")` API call as an example.
-
-
-
-
:information_source: **Note:** The lifeline for `DeleteCommandParser` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline continues till the end of diagram.
-
-
-How the `Logic` component works:
-
-1. When `Logic` is called upon to execute a command, it is passed to an `AddressBookParser` object which in turn creates a parser that matches the command (e.g., `DeleteCommandParser`) and uses it to parse the command.
-1. This results in a `Command` object (more precisely, an object of one of its subclasses e.g., `DeleteCommand`) which is executed by the `LogicManager`.
-1. The command can communicate with the `Model` when it is executed (e.g. to delete a person).
- Note that although this is shown as a single step in the diagram above (for simplicity), in the code it can take several interactions (between the command object and the `Model`) to achieve.
-1. The result of the command execution is encapsulated as a `CommandResult` object which is returned back from `Logic`.
-
-Here are the other classes in `Logic` (omitted from the class diagram above) that are used for parsing a user command:
-
-
-
-How the parsing works:
-* When called upon to parse a user command, the `AddressBookParser` class creates an `XYZCommandParser` (`XYZ` is a placeholder for the specific command name e.g., `AddCommandParser`) which uses the other classes shown above to parse the user command and create a `XYZCommand` object (e.g., `AddCommand`) which the `AddressBookParser` returns back as a `Command` object.
-* All `XYZCommandParser` classes (e.g., `AddCommandParser`, `DeleteCommandParser`, ...) inherit from the `Parser` interface so that they can be treated similarly where possible e.g, during testing.
-
-### Model component
-**API** : [`Model.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/model/Model.java)
-
-
-
-
-The `Model` component,
-
-* stores the address book data i.e., all `Person` objects (which are contained in a `UniquePersonList` object).
-* stores the currently 'selected' `Person` objects (e.g., results of a search query) as a separate _filtered_ list which is exposed to outsiders as an unmodifiable `ObservableList` that can be 'observed' e.g. the UI can be bound to this list so that the UI automatically updates when the data in the list change.
-* stores a `UserPref` object that represents the user’s preferences. This is exposed to the outside as a `ReadOnlyUserPref` objects.
-* does not depend on any of the other three components (as the `Model` represents data entities of the domain, they should make sense on their own without depending on other components)
-
-
:information_source: **Note:** An alternative (arguably, a more OOP) model is given below. It has a `Tag` list in the `AddressBook`, which `Person` references. This allows `AddressBook` to only require one `Tag` object per unique tag, instead of each `Person` needing their own `Tag` objects.
-
-
-
-
-
-
-### Storage component
-
-**API** : [`Storage.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/storage/Storage.java)
-
-
-
-The `Storage` component,
-* can save both address book data and user preference data in JSON format, and read them back into corresponding objects.
-* inherits from both `AddressBookStorage` and `UserPrefStorage`, which means it can be treated as either one (if only the functionality of only one is needed).
-* depends on some classes in the `Model` component (because the `Storage` component's job is to save/retrieve objects that belong to the `Model`)
-
-### Common classes
-
-Classes used by multiple components are in the `seedu.address.commons` package.
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Implementation**
-
-This section describes some noteworthy details on how certain features are implemented.
-
-### \[Proposed\] Undo/redo feature
-
-#### Proposed Implementation
-
-The proposed undo/redo mechanism is facilitated by `VersionedAddressBook`. It extends `AddressBook` with an undo/redo history, stored internally as an `addressBookStateList` and `currentStatePointer`. Additionally, it implements the following operations:
-
-* `VersionedAddressBook#commit()` — Saves the current address book state in its history.
-* `VersionedAddressBook#undo()` — Restores the previous address book state from its history.
-* `VersionedAddressBook#redo()` — Restores a previously undone address book state from its history.
-
-These operations are exposed in the `Model` interface as `Model#commitAddressBook()`, `Model#undoAddressBook()` and `Model#redoAddressBook()` respectively.
-
-Given below is an example usage scenario and how the undo/redo mechanism behaves at each step.
-
-Step 1. The user launches the application for the first time. The `VersionedAddressBook` will be initialized with the initial address book state, and the `currentStatePointer` pointing to that single address book state.
-
-
-
-Step 2. The user executes `delete 5` command to delete the 5th person in the address book. The `delete` command calls `Model#commitAddressBook()`, causing the modified state of the address book after the `delete 5` command executes to be saved in the `addressBookStateList`, and the `currentStatePointer` is shifted to the newly inserted address book state.
-
-
-
-Step 3. The user executes `add n/David …` to add a new person. The `add` command also calls `Model#commitAddressBook()`, causing another modified address book state to be saved into the `addressBookStateList`.
-
-
-
-
:information_source: **Note:** If a command fails its execution, it will not call `Model#commitAddressBook()`, so the address book state will not be saved into the `addressBookStateList`.
-
-
-
-Step 4. The user now decides that adding the person was a mistake, and decides to undo that action by executing the `undo` command. The `undo` command will call `Model#undoAddressBook()`, which will shift the `currentStatePointer` once to the left, pointing it to the previous address book state, and restores the address book to that state.
-
-
-
-
:information_source: **Note:** If the `currentStatePointer` is at index 0, pointing to the initial AddressBook state, then there are no previous AddressBook states to restore. The `undo` command uses `Model#canUndoAddressBook()` to check if this is the case. If so, it will return an error to the user rather
-than attempting to perform the undo.
-
-
-
-The following sequence diagram shows how an undo operation goes through the `Logic` component:
-
-
-
-
:information_source: **Note:** The lifeline for `UndoCommand` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline reaches the end of diagram.
-
-
-
-Similarly, how an undo operation goes through the `Model` component is shown below:
-
-
-
-The `redo` command does the opposite — it calls `Model#redoAddressBook()`, which shifts the `currentStatePointer` once to the right, pointing to the previously undone state, and restores the address book to that state.
-
-
:information_source: **Note:** If the `currentStatePointer` is at index `addressBookStateList.size() - 1`, pointing to the latest address book state, then there are no undone AddressBook states to restore. The `redo` command uses `Model#canRedoAddressBook()` to check if this is the case. If so, it will return an error to the user rather than attempting to perform the redo.
-
-
-
-Step 5. The user then decides to execute the command `list`. Commands that do not modify the address book, such as `list`, will usually not call `Model#commitAddressBook()`, `Model#undoAddressBook()` or `Model#redoAddressBook()`. Thus, the `addressBookStateList` remains unchanged.
-
-
-
-Step 6. The user executes `clear`, which calls `Model#commitAddressBook()`. Since the `currentStatePointer` is not pointing at the end of the `addressBookStateList`, all address book states after the `currentStatePointer` will be purged. Reason: It no longer makes sense to redo the `add n/David …` command. This is the behavior that most modern desktop applications follow.
-
-
-
-The following activity diagram summarizes what happens when a user executes a new command:
-
-
-
-#### Design considerations:
-
-**Aspect: How undo & redo executes:**
-
-* **Alternative 1 (current choice):** Saves the entire address book.
- * Pros: Easy to implement.
- * Cons: May have performance issues in terms of memory usage.
-
-* **Alternative 2:** Individual command knows how to undo/redo by
- itself.
- * Pros: Will use less memory (e.g. for `delete`, just save the person being deleted).
- * Cons: We must ensure that the implementation of each individual command are correct.
-
-_{more aspects and alternatives to be added}_
-
-### \[Proposed\] Data archiving
-
-_{Explain here how the data archiving feature will be implemented}_
-
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Documentation, logging, testing, configuration, dev-ops**
-
-* [Documentation guide](Documentation.md)
-* [Testing guide](Testing.md)
-* [Logging guide](Logging.md)
-* [Configuration guide](Configuration.md)
-* [DevOps guide](DevOps.md)
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Appendix: Requirements**
-
-### Product scope
-
-**Target user profile**:
-School teachers looking to manage the details of both students and other teachers
-* needs to keep track of many students at a time
-* can type fast
-* prefers to type in a command line interface
-* uses a small set of commands
-* makes frequent typos but hates to backtrack with backspace
-* likes to have an autocomplete suggestion
-
-**Value proposition**: EduConnect will provide a faster and more convenient way to manage details of students and teachers than other apps.
-
-
-### User stories
-
-Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unlikely to have) - `*`
-
-| Priority | As a … | I want to … | So that I can… |
-|-----------|---------------------------|---------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------|
-| `* * *` | new user | see usage instructions | refer to instructions when I forget how to use the App |
-| `* * *` | teacher | add a new student and their details | |
-| `* * *` | teacher | remove/delete a student from the app | remove entries that I no longer need |
-| `* * *` | teacher | add a new teacher and their details | find information on other teachers if need be |
-| `* * *` | teacher | remove/delete a teacher from the app | remove entries that I no longer need |
-| `* * *` | teacher | edit or update information of a student | keep the data stored accurate and up to date |
-| `* *` | teacher | clear all student/class data from the previous semester/year | reset the app for the new semester/year |
-| `* *` | teacher | search for students by some partial information | quickly find a list of students without recalling specific details |
-| `* *` | teacher | tag and filter students based on specific attributes | access relevant groups without manually searching every time |
-| `*` | teacher new to EduConnect | see a sample version of how the app will look with sample data | better visualise the workflow or how the app will work or look |
-| `*` | teacher who makes typos | have flexibility in typos for the commands | continue writing commands without needing to rewrite or backspace |
-| `*` | teacher familiar with CLI | use shortcuts or linux-like commands | enter commands faster and more familiar to me |
-| `*` | teacher | export student list and contact information to various formats | share and archive data easily for administrative purposes |
-| `*` | teacher | switch between different classes using keybinds | navigate between different groups of students efficiently |
-| `*` | teacher | have an undo/redo command for recent actions | quickly correct mistakes or revert changes |
-| `*` | teacher | create custom command aliases for frequently used commands | streamline my workflow and reduce the number of keystrokes needed |
-| `*` | teacher | have built-in calendar integration that links student info with important dates (e.g. parent meetings, exams) | easily access all relevant student data when preparing for key events |
-| `*` | teacher | quickly generate printable class rosters with selected details (e.g. names, contact info, emergency contacts) | have a physical copy for field trips or offline use |
-| `*` | teacher | have a dark mode or customizable themes for the interface | reduce eye strain while managing student data at night |
-| `*` | teacher | use natural language input for commands (e.g. "add student John Doe to class 5a") | enter commands more intuitively without memorising specific syntax |
-| `*` | teacher | group students based on customizable criteria (e.g. performance level, participation) | easily view and manage students with similar needs |
-| `*` | teacher | get the contact details of a frequently searched contact | quickly use it to contact a student |
-| `*` | teacher | systematically add the contact details of twins who share similar details | have a smaller chance of having errors |
-
-### Use cases
-
-(For all use cases below, the System is EduConnect and the Actor is a Teacher (User), unless specified otherwise)
-
-**Use case: UC01 - Add a student**
-
-**Preconditions**
-* User has the student’s details, i.e. name, gender, contact, classes, subject and email
-
-**MSS**
-
-1. Teacher enters the add student command
-2. EduConnect verifies the command inputs
-3. EduConnect adds the student’s contact details to the address book
-4. EduConnect displays a success message
-
- Use case ends.
-
-**Extensions**
-
-* 2a. Parameter(s) missing in command format
- * 2a1. EduConnect displays an error message, e.g. “Email parameter is missing! Ensure that you give values for /name /gender /contact /classes /subject /email”
-
- Use case ends.
-
-* 2b. Invalid/Unsupported parameter tag used
- * 2b1. EduConnect displays an error message, e.g. “Invalid detail to add! Please use the following options: name, gender, contact, classes, subject, email”
-
- Use case ends.
-
-* 2c. Invalid argument for a parameter given
- * 2c1. EduConnect displays an error message, e.g. “Name given is invalid! Please give a name that fits: First name and last name (with optional middle names)”
-
- Use case ends.
-
-* 2d. Existing contact or email given
- * 2d1. EduConnect displays an error message, e.g. “The email boydanderson@gmail.com is already in use”
-
- Use case ends.
-
-**Use case: UC02 - Add a teacher**
-
-**Preconditions**
-* User has the teacher’s details, i.e. name, gender, contact, classes, subject and email.
-
-**MSS**
-1. Teacher enters the add teacher command
-2. EduConnect verifies the command inputs
-3. EduConnect adds the teacher’s contact details to the address book
-4. EduConnect displays a success message
-
- Use case ends.
-
-**Extensions**
-* 2a. Parameter(s) missing in command format
- * 2a1. EduConnect displays an error message, e.g. “Email parameter is missing! Ensure that you give values for /name /gender /contact /classes /subject /email”
-
- Use case ends.
-
-* 2b. Invalid/Unsupported parameter tag used
- * 2b1. EduConnect displays an error message, e.g. “Invalid detail to add! Please use the following options: name, gender, contact, classes, subject, email”
-
- Use case ends.
-
-* 2c. Invalid argument for a parameter given
- * 2c1. EduConnect displays an error message, e.g. “Name given is invalid! Please give a name that fits: First name and last name (with optional middle names)”
-
- Use case ends.
-
-* 2d. Existing contact or email given
- * 2d1. EduConnect displays an error message, e.g. “The email boydanderson@gmail.com is already in use”
-
- Use case ends.
-
-**Use case: UC-03 Delete a contact**
-
-**Preconditions**
-* The address book contains at least one contact
-* User knows the index of the contact to be deleted
-
-**MSS**
-1. Teacher enters the delete contact command
-2. EduConnect verifies the index validity
-3. EduConnect deletes the contact from the address book
-4. EduConnect displays a success message
-
- Use case ends.
-
-**Extensions**
-* 2a. Invalid index provided
- * 2a1. EduConnect displays an error message, e.g. “Invalid index provided, enter an integer between [0, 10)”
-
- Use case ends.
-
-**Use case: UC-04 List contacts**
-
-**Preconditions**
-* User may optionally specify filter criteria using tags
-
-**MSS**
-1. Teacher enters the list command
-2. EduConnect displays a list of all contacts in the address book
-
- Use case ends.
-
-**Extensions**
-* 1a. Teacher specifies some filter criteria using valid tags
- * 1a1. EduConnect displays a list of all contacts that fit that criteria in the address book
-
- Use case ends.
-
-* 1b. Teacher uses invalid tags to filter
- * 1b1. EduConnect displays an error message, e.g. “Invalid detail to find with! Please use one of the following options: name, gender, contact, classes, subject, email”
-
- Use case ends.
-
-**Use case: UC-05 Edit a contact**
-
-**Preconditions**
-* The address book contains at least one contact
-* User knows the index of the contact to be edited
-
-**MSS**
-1. Teacher enters the edit command
-2. EduConnect verifies the command inputs
-3. EduConnect edits the specified contact in the address book
-4. EduConnect displays a success message
-
- Use case ends.
-
-**Extensions**
-* 2a. Invalid index provided
- * 2a1. EduConnect displays an error message, e.g. “Invalid index provided, enter an integer between [0, 10)”
-
- Use case ends.
-
-* 2b. Invalid/Unsupported parameter tag used
- * 2b1. EduConnect displays an error message, e.g. “Invalid detail to edit! Please use the following options: name, gender, contact, classes, subject, email”
-
- Use case ends.
-
-* 2c. Invalid new argument for a parameter given
- * 2c1. EduConnect displays an error message, e.g. “New name given is invalid! Please give a name that fits: First name and last name (with optional middle names)”
-
- Use case ends.
-
-* 2d. Duplicate contact or email provided
- * 2d1. EduConnect displays an error message, e.g. “The email boydanderson@gmail.com is already in use”
-
- Use case ends.
-
-**Use case: UC-06 Clear**
-
-**Preconditions**
-* User may optionally specify the occupation (teacher or student) and tags to filter which contacts are cleared
-
-**MSS**
-1. Teacher enters the clear command
-2. EduConnect clears all contacts in the address book
-3. EduConnect displays a success message
-
- Use case ends.
-
-**Extensions**
-* 1a. Teacher specifies an occupation to clear
- * 1a1. EduConnect clears all contacts of that occupation in the address book
-
- Use case ends.
-
-* 1b. Teacher specifies an invalid occupation
- * 1b1. EduConnect displays an error message, e.g. “Invalid occupation to clear, please specify either teacher or student”
-
- Use case ends.
-
-* 1c. Teacher specifies a tag to clear
- * 1c1. EduConnect clears all contacts with that tag value in the address book
-
- Use case ends.
-
-* 1d. Teacher specifies an invalid tag
- * 1d1. EduConnect displays an error message, e.g. “Invalid detail to clear with! Please use one of the following options: name, gender, contact, classes, subject, email”
-
- Use case ends.
-
-* 1e. Teacher specifies an occupation or tag with no matching contacts
- * 1e1. EduConnect displays a warning, e.g. “No contacts matching the specified filter, no changes made to address book”
-
- Use case ends.
-
-### Non-Functional Requirements
-
-1. Should work on any _mainstream OS_ as long as it has Java `17` or above installed.
-2. Should be able to hold up to 1000 persons without a noticeable sluggishness in performance for typical usage.
-3. A user with above average typing speed for regular English text (i.e. not code, not system admin commands) should be able to accomplish most of the tasks faster using commands than using the mouse.
-4. The system should handle errors gracefully, providing clear error messages for invalid inputs or operations.
-5. The system should be platform-independent and capable of running on any operating system that supports Java, ensuring that users across different platforms can use the program.
-6. The code should be well-documented, enabling developers to maintain and upgrade the system efficiently.
-7. The system should be modular, allowing for easy extension in the future (e.g., adding new fields for contacts or new types of commands).
-
-### Glossary
-
-* **Mainstream OS**: Windows, Linux, Unix, MacOS
-* **Private contact detail**: A contact detail that is not meant to be shared with others
-* **Subject**: The subject the student / teacher is taking
-* **Class**: The class the student / teacher is taking
-* **Command Line Interface (CLI)**: Text-based user interface that allows the user to input
-* **Next-of-Kin**: The contact of the closest relative of the current contact
-* **Database**: An organized collection of structured information or data, typically stored electronically.
-* **GUI (Graphical User Interface)**: A visual user interface that allows users to interact with an application through graphical elements like buttons, icons, and menus, instead of typing commands.
-* **Encryption**: The process of converting plain text data into a coded format to prevent unauthorized access.
-* **Version Control**: A system that records changes to a file or set of files over time, allowing developers to track and manage revisions.
-
---------------------------------------------------------------------------------------------------------------------
-
-## **Appendix: Instructions for manual testing**
-
-Given below are instructions to test the app manually.
-
-
:information_source: **Note:** These instructions only provide a starting point for testers to work on;
-testers are expected to do more *exploratory* testing.
-
-
-
-### Launch and shutdown
-
-1. Initial launch
-
- 1. Download the jar file and copy into an empty folder
-
- 1. Double-click the jar file Expected: Shows the GUI with a set of sample contacts. The window size may not be optimum.
-
-1. Saving window preferences
-
- 1. Resize the window to an optimum size. Move the window to a different location. Close the window.
-
- 1. Re-launch the app by double-clicking the jar file.
- Expected: The most recent window size and location is retained.
-
-1. _{ more test cases … }_
-
-### Deleting a person
-
-1. Deleting a person while all persons are being shown
-
- 1. Prerequisites: List all persons using the `list` command. Multiple persons in the list.
-
- 1. Test case: `delete 1`
- Expected: First contact is deleted from the list. Details of the deleted contact shown in the status message. Timestamp in the status bar is updated.
-
- 1. Test case: `delete 0`
- Expected: No person is deleted. Error details shown in the status message. Status bar remains the same.
-
- 1. Other incorrect delete commands to try: `delete`, `delete x`, `...` (where x is larger than the list size)
- Expected: Similar to previous.
-
-1. _{ more test cases … }_
-
-### Saving data
-
-1. Dealing with missing/corrupted data files
-
- 1. _{explain how to simulate a missing/corrupted file, and the expected behavior}_
-
-1. _{ more test cases … }_
diff --git a/docs/Documentation.md b/docs/Documentation.md
deleted file mode 100644
index 3e68ea364e7..00000000000
--- a/docs/Documentation.md
+++ /dev/null
@@ -1,29 +0,0 @@
----
-layout: page
-title: Documentation guide
----
-
-**Setting up and maintaining the project website:**
-
-* We use [**Jekyll**](https://jekyllrb.com/) to manage documentation.
-* The `docs/` folder is used for documentation.
-* To learn how set it up and maintain the project website, follow the guide [_[se-edu/guides] **Using Jekyll for project documentation**_](https://se-education.org/guides/tutorials/jekyll.html).
-* Note these points when adapting the documentation to a different project/product:
- * The 'Site-wide settings' section of the page linked above has information on how to update site-wide elements such as the top navigation bar.
- * :bulb: In addition to updating content files, you might have to update the config files `docs\_config.yml` and `docs\_sass\minima\_base.scss` (which contains a reference to `AB-3` that comes into play when converting documentation pages to PDF format).
-* If you are using Intellij for editing documentation files, you can consider enabling 'soft wrapping' for `*.md` files, as explained in [_[se-edu/guides] **Intellij IDEA: Useful settings**_](https://se-education.org/guides/tutorials/intellijUsefulSettings.html#enabling-soft-wrapping)
-
-
-**Style guidance:**
-
-* Follow the [**_Google developer documentation style guide_**](https://developers.google.com/style).
-
-* Also relevant is the [_[se-edu/guides] **Markdown coding standard**_](https://se-education.org/guides/conventions/markdown.html)
-
-**Diagrams:**
-
-* See the [_[se-edu/guides] **Using PlantUML**_](https://se-education.org/guides/tutorials/plantUml.html)
-
-**Converting a document to the PDF format:**
-
-* See the guide [_[se-edu/guides] **Saving web documents as PDF files**_](https://se-education.org/guides/tutorials/savingPdf.html)
diff --git a/docs/Gemfile b/docs/Gemfile
deleted file mode 100644
index c8385d85874..00000000000
--- a/docs/Gemfile
+++ /dev/null
@@ -1,10 +0,0 @@
-# frozen_string_literal: true
-
-source "https://rubygems.org"
-
-git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
-
-gem 'jekyll'
-gem 'github-pages', group: :jekyll_plugins
-gem 'wdm', '~> 0.1.0' if Gem.win_platform?
-gem 'webrick'
diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock
deleted file mode 100644
index bac5eb36d35..00000000000
--- a/docs/Gemfile.lock
+++ /dev/null
@@ -1,269 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- activesupport (7.0.7.2)
- concurrent-ruby (~> 1.0, >= 1.0.2)
- i18n (>= 1.6, < 2)
- minitest (>= 5.1)
- tzinfo (~> 2.0)
- addressable (2.8.4)
- public_suffix (>= 2.0.2, < 6.0)
- coffee-script (2.4.1)
- coffee-script-source
- execjs
- coffee-script-source (1.11.1)
- colorator (1.1.0)
- commonmarker (0.23.10)
- concurrent-ruby (1.2.2)
- dnsruby (1.70.0)
- simpleidn (~> 0.2.1)
- em-websocket (0.5.3)
- eventmachine (>= 0.12.9)
- http_parser.rb (~> 0)
- ethon (0.16.0)
- ffi (>= 1.15.0)
- eventmachine (1.2.7)
- eventmachine (1.2.7-x64-mingw32)
- execjs (2.8.1)
- faraday (2.7.5)
- faraday-net_http (>= 2.0, < 3.1)
- ruby2_keywords (>= 0.0.4)
- faraday-net_http (3.0.2)
- ffi (1.15.5)
- ffi (1.15.5-x64-mingw32)
- forwardable-extended (2.6.0)
- gemoji (3.0.1)
- github-pages (228)
- github-pages-health-check (= 1.17.9)
- jekyll (= 3.9.3)
- jekyll-avatar (= 0.7.0)
- jekyll-coffeescript (= 1.1.1)
- jekyll-commonmark-ghpages (= 0.4.0)
- jekyll-default-layout (= 0.1.4)
- jekyll-feed (= 0.15.1)
- jekyll-gist (= 1.5.0)
- jekyll-github-metadata (= 2.13.0)
- jekyll-include-cache (= 0.2.1)
- jekyll-mentions (= 1.6.0)
- jekyll-optional-front-matter (= 0.3.2)
- jekyll-paginate (= 1.1.0)
- jekyll-readme-index (= 0.3.0)
- jekyll-redirect-from (= 0.16.0)
- jekyll-relative-links (= 0.6.1)
- jekyll-remote-theme (= 0.4.3)
- jekyll-sass-converter (= 1.5.2)
- jekyll-seo-tag (= 2.8.0)
- jekyll-sitemap (= 1.4.0)
- jekyll-swiss (= 1.0.0)
- jekyll-theme-architect (= 0.2.0)
- jekyll-theme-cayman (= 0.2.0)
- jekyll-theme-dinky (= 0.2.0)
- jekyll-theme-hacker (= 0.2.0)
- jekyll-theme-leap-day (= 0.2.0)
- jekyll-theme-merlot (= 0.2.0)
- jekyll-theme-midnight (= 0.2.0)
- jekyll-theme-minimal (= 0.2.0)
- jekyll-theme-modernist (= 0.2.0)
- jekyll-theme-primer (= 0.6.0)
- jekyll-theme-slate (= 0.2.0)
- jekyll-theme-tactile (= 0.2.0)
- jekyll-theme-time-machine (= 0.2.0)
- jekyll-titles-from-headings (= 0.5.3)
- jemoji (= 0.12.0)
- kramdown (= 2.3.2)
- kramdown-parser-gfm (= 1.1.0)
- liquid (= 4.0.4)
- mercenary (~> 0.3)
- minima (= 2.5.1)
- nokogiri (>= 1.13.6, < 2.0)
- rouge (= 3.26.0)
- terminal-table (~> 1.4)
- github-pages-health-check (1.17.9)
- addressable (~> 2.3)
- dnsruby (~> 1.60)
- octokit (~> 4.0)
- public_suffix (>= 3.0, < 5.0)
- typhoeus (~> 1.3)
- html-pipeline (2.14.3)
- activesupport (>= 2)
- nokogiri (>= 1.4)
- http_parser.rb (0.8.0)
- i18n (1.14.1)
- concurrent-ruby (~> 1.0)
- jekyll (3.9.3)
- addressable (~> 2.4)
- colorator (~> 1.0)
- em-websocket (~> 0.5)
- i18n (>= 0.7, < 2)
- jekyll-sass-converter (~> 1.0)
- jekyll-watch (~> 2.0)
- kramdown (>= 1.17, < 3)
- liquid (~> 4.0)
- mercenary (~> 0.3.3)
- pathutil (~> 0.9)
- rouge (>= 1.7, < 4)
- safe_yaml (~> 1.0)
- jekyll-avatar (0.7.0)
- jekyll (>= 3.0, < 5.0)
- jekyll-coffeescript (1.1.1)
- coffee-script (~> 2.2)
- coffee-script-source (~> 1.11.1)
- jekyll-commonmark (1.4.0)
- commonmarker (~> 0.22)
- jekyll-commonmark-ghpages (0.4.0)
- commonmarker (~> 0.23.7)
- jekyll (~> 3.9.0)
- jekyll-commonmark (~> 1.4.0)
- rouge (>= 2.0, < 5.0)
- jekyll-default-layout (0.1.4)
- jekyll (~> 3.0)
- jekyll-feed (0.15.1)
- jekyll (>= 3.7, < 5.0)
- jekyll-gist (1.5.0)
- octokit (~> 4.2)
- jekyll-github-metadata (2.13.0)
- jekyll (>= 3.4, < 5.0)
- octokit (~> 4.0, != 4.4.0)
- jekyll-include-cache (0.2.1)
- jekyll (>= 3.7, < 5.0)
- jekyll-mentions (1.6.0)
- html-pipeline (~> 2.3)
- jekyll (>= 3.7, < 5.0)
- jekyll-optional-front-matter (0.3.2)
- jekyll (>= 3.0, < 5.0)
- jekyll-paginate (1.1.0)
- jekyll-readme-index (0.3.0)
- jekyll (>= 3.0, < 5.0)
- jekyll-redirect-from (0.16.0)
- jekyll (>= 3.3, < 5.0)
- jekyll-relative-links (0.6.1)
- jekyll (>= 3.3, < 5.0)
- jekyll-remote-theme (0.4.3)
- addressable (~> 2.0)
- jekyll (>= 3.5, < 5.0)
- jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
- rubyzip (>= 1.3.0, < 3.0)
- jekyll-sass-converter (1.5.2)
- sass (~> 3.4)
- jekyll-seo-tag (2.8.0)
- jekyll (>= 3.8, < 5.0)
- jekyll-sitemap (1.4.0)
- jekyll (>= 3.7, < 5.0)
- jekyll-swiss (1.0.0)
- jekyll-theme-architect (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-cayman (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-dinky (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-hacker (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-leap-day (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-merlot (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-midnight (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-minimal (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-modernist (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-primer (0.6.0)
- jekyll (> 3.5, < 5.0)
- jekyll-github-metadata (~> 2.9)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-slate (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-tactile (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-theme-time-machine (0.2.0)
- jekyll (> 3.5, < 5.0)
- jekyll-seo-tag (~> 2.0)
- jekyll-titles-from-headings (0.5.3)
- jekyll (>= 3.3, < 5.0)
- jekyll-watch (2.2.1)
- listen (~> 3.0)
- jemoji (0.12.0)
- gemoji (~> 3.0)
- html-pipeline (~> 2.2)
- jekyll (>= 3.0, < 5.0)
- kramdown (2.3.2)
- rexml
- kramdown-parser-gfm (1.1.0)
- kramdown (~> 2.0)
- liquid (4.0.4)
- listen (3.8.0)
- rb-fsevent (~> 0.10, >= 0.10.3)
- rb-inotify (~> 0.9, >= 0.9.10)
- mercenary (0.3.6)
- mini_portile2 (2.8.6)
- minima (2.5.1)
- jekyll (>= 3.5, < 5.0)
- jekyll-feed (~> 0.9)
- jekyll-seo-tag (~> 2.1)
- minitest (5.19.0)
- nokogiri (1.16.5)
- mini_portile2 (~> 2.8.2)
- racc (~> 1.4)
- octokit (4.25.1)
- faraday (>= 1, < 3)
- sawyer (~> 0.9)
- pathutil (0.16.2)
- forwardable-extended (~> 2.6)
- public_suffix (4.0.7)
- racc (1.7.3)
- rb-fsevent (0.11.2)
- rb-inotify (0.10.1)
- ffi (~> 1.0)
- rexml (3.3.6)
- strscan
- rouge (3.26.0)
- ruby2_keywords (0.0.5)
- rubyzip (2.3.2)
- safe_yaml (1.0.5)
- sass (3.7.4)
- sass-listen (~> 4.0.0)
- sass-listen (4.0.0)
- rb-fsevent (~> 0.9, >= 0.9.4)
- rb-inotify (~> 0.9, >= 0.9.7)
- sawyer (0.9.2)
- addressable (>= 2.3.5)
- faraday (>= 0.17.3, < 3)
- simpleidn (0.2.1)
- unf (~> 0.1.4)
- strscan (3.1.0)
- terminal-table (1.8.0)
- unicode-display_width (~> 1.1, >= 1.1.1)
- typhoeus (1.4.0)
- ethon (>= 0.9.0)
- tzinfo (2.0.6)
- concurrent-ruby (~> 1.0)
- unf (0.1.4)
- unf_ext
- unf_ext (0.0.8.2)
- unf_ext (0.0.8.2-x64-mingw32)
- unicode-display_width (1.8.0)
- webrick (1.8.1)
-
-PLATFORMS
- ruby
- x64-mingw32
-
-DEPENDENCIES
- github-pages
- jekyll
- webrick
-
-BUNDLED WITH
- 2.1.4
diff --git a/docs/Logging.md b/docs/Logging.md
deleted file mode 100644
index 5e4fb9bc217..00000000000
--- a/docs/Logging.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-layout: page
-title: Logging guide
----
-
-* We are using `java.util.logging` package for logging.
-* The `LogsCenter` class is used to manage the logging levels and logging destinations.
-* The `Logger` for a class can be obtained using `LogsCenter.getLogger(Class)` which will log messages according to the specified logging level.
-* Log messages are output through the console and to a `.log` file.
-* The output logging level can be controlled using the `logLevel` setting in the configuration file (See the [Configuration guide](Configuration.md) section).
-* **When choosing a level for a log message**, follow the conventions given in [_[se-edu/guides] Java: Logging conventions_](https://se-education.org/guides/conventions/java/logging.html).
diff --git a/docs/SettingUp.md b/docs/SettingUp.md
deleted file mode 100644
index 9f832a19674..00000000000
--- a/docs/SettingUp.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-layout: page
-title: Setting up and getting started
----
-
-* Table of Contents
-{:toc}
-
-
---------------------------------------------------------------------------------------------------------------------
-
-## Setting up the project in your computer
-
-
:exclamation: **Caution:**
-
-Follow the steps in the following guide precisely. Things will not work out if you deviate in some steps.
-
-
-First, **fork** this repo, and **clone** the fork into your computer.
-
-If you plan to use Intellij IDEA (highly recommended):
-1. **Configure the JDK**: Follow the guide [_[se-edu/guides] IDEA: Configuring the JDK_](https://se-education.org/guides/tutorials/intellijJdk.html) to ensure Intellij is configured to use **JDK 17**.
-1. **Import the project as a Gradle project**: Follow the guide [_[se-edu/guides] IDEA: Importing a Gradle project_](https://se-education.org/guides/tutorials/intellijImportGradleProject.html) to import the project into IDEA.
- :exclamation: Note: Importing a Gradle project is slightly different from importing a normal Java project.
-1. **Verify the setup**:
- 1. Run the `seedu.address.Main` and try a few commands.
- 1. [Run the tests](Testing.md) to ensure they all pass.
-
---------------------------------------------------------------------------------------------------------------------
-
-## Before writing code
-
-1. **Configure the coding style**
-
- If using IDEA, follow the guide [_[se-edu/guides] IDEA: Configuring the code style_](https://se-education.org/guides/tutorials/intellijCodeStyle.html) to set up IDEA's coding style to match ours.
-
-
:bulb: **Tip:**
-
- Optionally, you can follow the guide [_[se-edu/guides] Using Checkstyle_](https://se-education.org/guides/tutorials/checkstyle.html) to find how to use the CheckStyle within IDEA e.g., to report problems _as_ you write code.
-
-
-1. **Set up CI**
-
- This project comes with a GitHub Actions config files (in `.github/workflows` folder). When GitHub detects those files, it will run the CI for your project automatically at each push to the `master` branch or to any PR. No set up required.
-
-1. **Learn the design**
-
- When you are ready to start coding, we recommend that you get some sense of the overall design by reading about [AddressBook’s architecture](DeveloperGuide.md#architecture).
-
-1. **Do the tutorials**
- These tutorials will help you get acquainted with the codebase.
-
- * [Tracing code](tutorials/TracingCode.md)
- * [Adding a new command](tutorials/AddRemark.md)
- * [Removing fields](tutorials/RemovingFields.md)
diff --git a/docs/Testing.md b/docs/Testing.md
deleted file mode 100644
index 8a99e82438a..00000000000
--- a/docs/Testing.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-layout: page
-title: Testing guide
----
-
-* Table of Contents
-{:toc}
-
---------------------------------------------------------------------------------------------------------------------
-
-## Running tests
-
-There are two ways to run tests.
-
-* **Method 1: Using IntelliJ JUnit test runner**
- * To run all tests, right-click on the `src/test/java` folder and choose `Run 'All Tests'`
- * To run a subset of tests, you can right-click on a test package,
- test class, or a test and choose `Run 'ABC'`
-* **Method 2: Using Gradle**
- * Open a console and run the command `gradlew clean test` (Mac/Linux: `./gradlew clean test`)
-
-
:link: **Link**: Read [this Gradle Tutorial from the se-edu/guides](https://se-education.org/guides/tutorials/gradle.html) to learn more about using Gradle.
-
-
---------------------------------------------------------------------------------------------------------------------
-
-## Types of tests
-
-This project has three types of tests:
-
-1. *Unit tests* targeting the lowest level methods/classes.
- e.g. `seedu.address.commons.StringUtilTest`
-1. *Integration tests* that are checking the integration of multiple code units (those code units are assumed to be working).
- e.g. `seedu.address.storage.StorageManagerTest`
-1. Hybrids of unit and integration tests. These test are checking multiple code units as well as how the are connected together.
- e.g. `seedu.address.logic.LogicManagerTest`
diff --git a/docs/UserGuide.md b/docs/UserGuide.md
deleted file mode 100644
index 84b4ddc4e40..00000000000
--- a/docs/UserGuide.md
+++ /dev/null
@@ -1,199 +0,0 @@
----
-layout: page
-title: User Guide
----
-
-AddressBook Level 3 (AB3) is a **desktop app for managing contacts, optimized for use via a Command Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, AB3 can get your contact management tasks done faster than traditional GUI apps.
-
-* Table of Contents
-{:toc}
-
---------------------------------------------------------------------------------------------------------------------
-
-## Quick start
-
-1. Ensure you have Java `17` or above installed in your Computer.
-
-1. Download the latest `.jar` file from [here](https://github.com/se-edu/addressbook-level3/releases).
-
-1. Copy the file to the folder you want to use as the _home folder_ for your AddressBook.
-
-1. Open a command terminal, `cd` into the folder you put the jar file in, and use the `java -jar addressbook.jar` command to run the application.
- A GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.
- 
-
-1. Type the command in the command box and press Enter to execute it. e.g. typing **`help`** and pressing Enter will open the help window.
- Some example commands you can try:
-
- * `list` : Lists all contacts.
-
- * `add n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01` : Adds a contact named `John Doe` to the Address Book.
-
- * `delete 3` : Deletes the 3rd contact shown in the current list.
-
- * `clear` : Deletes all contacts.
-
- * `exit` : Exits the app.
-
-1. Refer to the [Features](#features) below for details of each command.
-
---------------------------------------------------------------------------------------------------------------------
-
-## Features
-
-
-
-**:information_source: Notes about the command format:**
-
-* Words in `UPPER_CASE` are the parameters to be supplied by the user.
- e.g. in `add n/NAME`, `NAME` is a parameter which can be used as `add n/John Doe`.
-
-* Items in square brackets are optional.
- e.g `n/NAME [t/TAG]` can be used as `n/John Doe t/friend` or as `n/John Doe`.
-
-* Items with `…` after them can be used multiple times including zero times.
- e.g. `[t/TAG]…` can be used as ` ` (i.e. 0 times), `t/friend`, `t/friend t/family` etc.
-
-* Parameters can be in any order.
- e.g. if the command specifies `n/NAME p/PHONE_NUMBER`, `p/PHONE_NUMBER n/NAME` is also acceptable.
-
-* Extraneous parameters for commands that do not take in parameters (such as `help`, `list`, `exit` and `clear`) will be ignored.
- e.g. if the command specifies `help 123`, it will be interpreted as `help`.
-
-* If you are using a PDF version of this document, be careful when copying and pasting commands that span multiple lines as space characters surrounding line-breaks may be omitted when copied over to the application.
-
-
-### Viewing help : `help`
-
-Shows a message explaning how to access the help page.
-
-
-
-Format: `help`
-
-
-### Adding a person: `add`
-
-Adds a person to the address book.
-
-Format: `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…`
-
-
:bulb: **Tip:**
-A person can have any number of tags (including 0)
-
-
-Examples:
-* `add n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01`
-* `add n/Betsy Crowe t/friend e/betsycrowe@example.com a/Newgate Prison p/1234567 t/criminal`
-
-### Listing all persons : `list`
-
-Shows a list of all persons in the address book.
-
-Format: `list`
-
-### Editing a person : `edit`
-
-Edits an existing person in the address book.
-
-Format: `edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [t/TAG]…`
-
-* Edits the person at the specified `INDEX`. The index refers to the index number shown in the displayed person list. The index **must be a positive integer** 1, 2, 3, …
-* At least one of the optional fields must be provided.
-* Existing values will be updated to the input values.
-* When editing tags, the existing tags of the person will be removed i.e adding of tags is not cumulative.
-* You can remove all the person’s tags by typing `t/` without
- specifying any tags after it.
-
-Examples:
-* `edit 1 p/91234567 e/johndoe@example.com` Edits the phone number and email address of the 1st person to be `91234567` and `johndoe@example.com` respectively.
-* `edit 2 n/Betsy Crower t/` Edits the name of the 2nd person to be `Betsy Crower` and clears all existing tags.
-
-### Locating persons by name: `find`
-
-Finds persons whose names contain any of the given keywords.
-
-Format: `find KEYWORD [MORE_KEYWORDS]`
-
-* The search is case-insensitive. e.g `hans` will match `Hans`
-* The order of the keywords does not matter. e.g. `Hans Bo` will match `Bo Hans`
-* Only the name is searched.
-* Only full words will be matched e.g. `Han` will not match `Hans`
-* Persons matching at least one keyword will be returned (i.e. `OR` search).
- e.g. `Hans Bo` will return `Hans Gruber`, `Bo Yang`
-
-Examples:
-* `find John` returns `john` and `John Doe`
-* `find alex david` returns `Alex Yeoh`, `David Li`
- 
-
-### Deleting a person : `delete`
-
-Deletes the specified person from the address book.
-
-Format: `delete INDEX`
-
-* Deletes the person at the specified `INDEX`.
-* The index refers to the index number shown in the displayed person list.
-* The index **must be a positive integer** 1, 2, 3, …
-
-Examples:
-* `list` followed by `delete 2` deletes the 2nd person in the address book.
-* `find Betsy` followed by `delete 1` deletes the 1st person in the results of the `find` command.
-
-### Clearing all entries : `clear`
-
-Clears all entries from the address book.
-
-Format: `clear`
-
-### Exiting the program : `exit`
-
-Exits the program.
-
-Format: `exit`
-
-### Saving the data
-
-AddressBook data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
-
-### Editing the data file
-
-AddressBook data are saved automatically as a JSON file `[JAR file location]/data/addressbook.json`. Advanced users are welcome to update data directly by editing that data file.
-
-
:exclamation: **Caution:**
-If your changes to the data file makes its format invalid, AddressBook will discard all data and start with an empty data file at the next run. Hence, it is recommended to take a backup of the file before editing it.
-Furthermore, certain edits can cause the AddressBook to behave in unexpected ways (e.g., if a value entered is outside of the acceptable range). Therefore, edit the data file only if you are confident that you can update it correctly.
-
-
-### Archiving data files `[coming in v2.0]`
-
-_Details coming soon ..._
-
---------------------------------------------------------------------------------------------------------------------
-
-## FAQ
-
-**Q**: How do I transfer my data to another Computer?
-**A**: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous AddressBook home folder.
-
---------------------------------------------------------------------------------------------------------------------
-
-## Known issues
-
-1. **When using multiple screens**, if you move the application to a secondary screen, and later switch to using only the primary screen, the GUI will open off-screen. The remedy is to delete the `preferences.json` file created by the application before running the application again.
-2. **If you minimize the Help Window** and then run the `help` command (or use the `Help` menu, or the keyboard shortcut `F1`) again, the original Help Window will remain minimized, and no new Help Window will appear. The remedy is to manually restore the minimized Help Window.
-
---------------------------------------------------------------------------------------------------------------------
-
-## Command summary
-
-Action | Format, Examples
---------|------------------
-**Add** | `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…` e.g., `add n/James Ho p/22224444 e/jamesho@example.com a/123, Clementi Rd, 1234665 t/friend t/colleague`
-**Clear** | `clear`
-**Delete** | `delete INDEX` e.g., `delete 3`
-**Edit** | `edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [t/TAG]…` e.g.,`edit 2 n/James Lee e/jameslee@example.com`
-**Find** | `find KEYWORD [MORE_KEYWORDS]` e.g., `find James Jake`
-**List** | `list`
-**Help** | `help`
diff --git a/docs/_config.yml b/docs/_config.yml
deleted file mode 100644
index 3cfe9fc7917..00000000000
--- a/docs/_config.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-title: "EduConnect"
-theme: minima
-
-header_pages:
- - UserGuide.md
- - DeveloperGuide.md
- - AboutUs.md
-
-markdown: kramdown
-
-repository: "AY2425S1-CS2103T-F12-2/tp"
-github_icon: "images/github-icon.png"
-
-plugins:
- - jemoji
diff --git a/docs/_data/projects.yml b/docs/_data/projects.yml
deleted file mode 100644
index 8f3e50cb601..00000000000
--- a/docs/_data/projects.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-- name: "AB-1"
- url: https://se-edu.github.io/addressbook-level1
-
-- name: "AB-2"
- url: https://se-edu.github.io/addressbook-level2
-
-- name: "AB-3"
- url: https://se-edu.github.io/addressbook-level3
-
-- name: "AB-4"
- url: https://se-edu.github.io/addressbook-level4
-
-- name: "Duke"
- url: https://se-edu.github.io/duke
-
-- name: "Collate"
- url: https://se-edu.github.io/collate
-
-- name: "Book"
- url: https://se-edu.github.io/se-book
-
-- name: "Resources"
- url: https://se-edu.github.io/resources
diff --git a/docs/_includes/custom-head.html b/docs/_includes/custom-head.html
deleted file mode 100644
index 8559a67ffad..00000000000
--- a/docs/_includes/custom-head.html
+++ /dev/null
@@ -1,6 +0,0 @@
-{% comment %}
- Placeholder to allow defining custom head, in principle, you can add anything here, e.g. favicons:
-
- 1. Head over to https://realfavicongenerator.net/ to add your own favicons.
- 2. Customize default _includes/custom-head.html in your source directory and insert the given code snippet.
-{% endcomment %}
diff --git a/docs/_includes/head.html b/docs/_includes/head.html
deleted file mode 100644
index 83ac5326933..00000000000
--- a/docs/_includes/head.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
- {%- include custom-head.html -%}
-
- {{page.title}}
-
-
diff --git a/docs/_includes/header.html b/docs/_includes/header.html
deleted file mode 100644
index 33badcd4f99..00000000000
--- a/docs/_includes/header.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-