{"id":17882005,"url":"https://github.com/xjqx/sc2002-fypms","last_synced_at":"2025-03-22T11:31:22.907Z","repository":{"id":237425667,"uuid":"623342062","full_name":"xJQx/sc2002-fypms","owner":"xJQx","description":"A Java-based application for managing final year projects (FYP) for students in tertiary institutions.","archived":false,"fork":false,"pushed_at":"2023-04-16T15:11:50.000Z","size":2334,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-18T11:04:26.201Z","etag":null,"topics":["java","oop","solid-principles","uml-class-diagram"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xJQx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-04T07:20:00.000Z","updated_at":"2024-05-14T07:32:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"031a97d4-df78-42ae-9054-0902b9913fe5","html_url":"https://github.com/xJQx/sc2002-fypms","commit_stats":null,"previous_names":["xjqx/sc2002-fypms"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xJQx%2Fsc2002-fypms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xJQx%2Fsc2002-fypms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xJQx%2Fsc2002-fypms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xJQx%2Fsc2002-fypms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xJQx","download_url":"https://codeload.github.com/xJQx/sc2002-fypms/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244951437,"owners_count":20537385,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","oop","solid-principles","uml-class-diagram"],"created_at":"2024-10-28T12:46:37.005Z","updated_at":"2025-03-22T11:31:22.899Z","avatar_url":"https://github.com/xJQx.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Final Year Project Management System\n\n![UML Class Diagram](https://img.shields.io/badge/UML%20Class%20Diagram-1976D2?style=for-the-badge\u0026logoColor=white)\n![Solid Design Principles](https://img.shields.io/badge/SOLID%20Design%20Principles-C71A36?style=for-the-badge\u0026logoColor=white)\n![OOP Concepts](https://img.shields.io/badge/OOP%20Concepts-C71A36?style=for-the-badge\u0026logoColor=white)\n![Java](https://img.shields.io/badge/java-%23ED8B00.svg?style=for-the-badge\u0026logo=java\u0026logoColor=white)\n![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge\u0026logo=git\u0026logoColor=white)\n\n**Team:** [\u003cimg src=\"https://github.com/xJQx.png\" height=\"20\" width=\"20\" /\u003e Jing Qiang](https://github.com/xJQx) |\n[\u003cimg src=\"https://github.com/ztjhz.png\" height=\"20\" width=\"20\" /\u003e Jing Hua](https://github.com/ztjhz) |\n[\u003cimg src=\"https://github.com/trinionggg.png\" height=\"20\" width=\"20\" /\u003e Trini](https://github.com/trinionggg)\n\n**Docs:** [Report](https://github.com/xJQx/sc2002-fypms/blob/main/report.pdf) | \n[UML Class Diagram](https://github.com/xJQx/sc2002-fypms/blob/main/uml%20class%20diagram/uml-class-diagram.jpg) |\n[Java Docs](https://xjqx.github.io/sc2002-fypms/sc2002_fypms/module-summary.html)\n\nA Java-based application for managing **final year projects (FYP)** for students in tertiary institutions. It features authentication, user management, project management, and communications between students, supervisors, and fyp coordinators. This README file provides instructions on how to clone, compile, and run the project.\n\n## Table of Contents\n\n- [Final Year Project Management System](#final-year-project-management-system)\n  - [Table of Contents](#table-of-contents)\n- [FYPMS setup instructions](#fypms-setup-instructions)\n  - [Compiling and Running the project](#compiling-and-running-the-project)\n    - [Using the terminal](#using-the-terminal)\n    - [Using Eclipse](#using-eclipse)\n  - [Generating JavaDocs](#generating-javadocs)\n    - [Using the terminal](#using-the-terminal-1)\n    - [Using Eclipse](#using-eclipse-1)\n- [Usage](#usage)\n  - [Login Credentials](#login-credentials)\n\n# FYPMS setup instructions\n\n## Compiling and Running the project\n\n### Using the terminal\n\nThese setup instructions will guide you through the process of cloning the repository, navigating to the cloned repository, compiling the project, and running the project in your terminal.\n\n1. Open your terminal\n\n2. Clone the repository by entering the following command:\n\n   ```bash\n   git clone https://github.com/xJQx/sc2002-fypms.git\n   ```\n\n3. Navigate to the cloned repository by entering the following command:\n\n   ```bash\n   cd sc2002-fypms\n   ```\n\n4. Compile the project by entering the following command:\n\n   ```bash\n   javac -cp src -d bin src/main/FypmsApp.java\n   ```\n\n5. Run the project by entering the following command:\n\n   ```bash\n   java -cp bin main.FypmsApp\n   ```\n\nCongratulations, you have successfully cloned, compiled, and run the FYPMS project!\n\n### Using Eclipse\n\nIf you prefer to use Eclipse as your IDE, you can also set up the project there. Here are the steps you need to follow:\n\n1. Open Eclipse\n2. Click on `File` \u003e `Import` \u003e `Git` \u003e `Projects from Git` \u003e `Clone URI`\n3. In the `Clone URI` window, paste the following URL:\n\n   ```bash\n   https://github.com/xJQx/sc2002-fypms.git\n   ```\n\n4. Click `Next` and follow the prompts to finish the cloning process\n5. Once the project is cloned, right-click on the project folder and select `Properties`\n6. In the `Properties` window, click on `Java Build Path` \u003e `Source` \u003e `Add Folder`\n7. Select the `src` folder from the project directory and click `OK`\n8. Now you can run the project by right-clicking on `FypmsApp.java` in the `src/main` folder and selecting `Run As` \u003e `Java Application`\n\nThat's it! You should now have the project up and running in Eclipse.\n\n## Generating JavaDocs\n\n### Using the terminal\n\nFollow the steps below to generate JavaDocs using the terminal:\n\n1. Open you terminal.\n2. Navigate to the root directory of the project.\n3. Run the following command in the terminal:\n\n   ```bash\n    javadoc -d docs -sourcepath src -subpackages controllers:enums:interfaces:main:models:services:stores:utils:views -private\n   ```\n\n   This command will generate the JavaDocs and save them in the docs directory in HTML format.\n\n4. Navigate to the `docs` directory using the following command:\n\n   ```bash\n   cd docs\n   ```\n\n5. Open the `index.html` file in a web browser to view the generated JavaDocs.\n\nCongratulations, you have successfully created and viewed the JavaDocs.\n\n### Using Eclipse\n\n1. Open the Eclipse IDE and open your Java project.\n\n2. Select the package or class for which you want to generate JavaDocs.\n\n3. Go to the \"Project\" menu and select \"Generate Javadoc\".\n\n4. In the \"Generate Javadoc\" dialog box, select the \"Private\" option to generate JavaDocs for private classes and members.\n\n5. Choose the destination folder where you want to save the generated JavaDocs.\n\n6. In the \"Javadoc command line arguments\" field, add any additional arguments that you want to include, such as `-classpath`.\n\n7. Click the \"Finish\" button to start the JavaDocs generation process.\n\n8. Once the JavaDocs have been generated, you can view them by opening the `index.html` file in your web browser.\n\nCongratulations, you have successfully created and viewed the JavaDocs.\n\n# Usage\n\n## Login Credentials\n\nThis section contains some login credentials for users with different roles. The full list is available in `data/user.csv` file.\n\n**Students:**\n\n```bash\n# Student 1\nUSERID: YCHERN\nPASSWORD: password\n\n# Student 2\nUSERID: KOH1\nPASSWORD: password\n\n# Student 3\nUSERID: CT113\nPASSWORD: password\n```\n\n**Supervisors:**\n\n```bash\n# Supervisor 1\nUSERID: BOAN\nPASSWORD: password\n\n# Supervisor 2\nUSERID: LIMO\nPASSWORD: password\n```\n\n**FYP Coordinator:**\n\n```bash\n# FYP Coordinator 1\nUSERID: ASFLI\nPASSWORD: password\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxjqx%2Fsc2002-fypms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxjqx%2Fsc2002-fypms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxjqx%2Fsc2002-fypms/lists"}