<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Knaylor</id>
	<title>Expertiza_Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Knaylor"/>
	<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=Special:Contributions/Knaylor"/>
	<updated>2026-06-07T22:23:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159572</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159572"/>
		<updated>2024-11-14T17:57:09Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Workflow Diagrams */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Design Pattern and Strategy=&lt;br /&gt;
Our main goal is to help present the user's activities on GitHub which includes comments, contributions, time range contributions and profiles. &lt;br /&gt;
&lt;br /&gt;
'''Frontend GUI (React)''':&lt;br /&gt;
* Implement an interactive UI for the users to display the information related to GitHub activities.&lt;br /&gt;
* To build a clean and robust frontend design to make it visually appealing.&lt;br /&gt;
&lt;br /&gt;
'''Backend (Flask)''':&lt;br /&gt;
* Integrate Flask API endpoints to fetch the data which includes user's comments, contributions, time range contributions and profiles on Github.&lt;br /&gt;
* Integrate and implement a GitHub token-based login feature to access the information.&lt;br /&gt;
&lt;br /&gt;
'''Workflow''':&lt;br /&gt;
* The backend system will fetch the data of the user's GitHub activities.&lt;br /&gt;
* It will pass this information to frontend which is fetched by React.&lt;br /&gt;
* After fetching the details from the backend system, it will display it in the form of UI.&lt;br /&gt;
&lt;br /&gt;
== Workflow Diagrams ==&lt;br /&gt;
&lt;br /&gt;
===Phase 1:===&lt;br /&gt;
[[File:Before-workflow-2401.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Phase 2:===&lt;br /&gt;
[[File:After-workflow-2401.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Phase 1 vs Phase 2: Key Differences ==&lt;br /&gt;
&lt;br /&gt;
=== Objective ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Develop a backend service using Flask to interact with the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Refactor the backend code to improve maintainability by using constants and develop a frontend using React.&lt;br /&gt;
&lt;br /&gt;
=== Backend Queries ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Use hard-coded strings for field names, node names, and arguments.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Replace hard-coded strings with reusable constants for fields, nodes, and arguments.&lt;br /&gt;
&lt;br /&gt;
=== API Endpoints ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Implement API endpoints for `/comments`, `/contributions`, `/profiles`, and `/time_range_contributions`.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Enhance endpoints with better code readability by using pre-defined constants.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No frontend implementation.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Develop a React-based frontend that allows users to interact with the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
=== Bulk Querying ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No support for bulk querying of usernames.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Implement a feature that allows users to upload a CSV containing GitHub usernames and retrieves their contribution metrics.&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Perform unit and integration tests for Flask endpoints.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Expand tests to include the refactored backend and React frontend functionality.&lt;br /&gt;
&lt;br /&gt;
=== Deliverables ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Deliver a functional backend that can query the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Deliver a refactored backend, React frontend, and CSV bulk query feature for GitHub metrics.&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time range contributions===&lt;br /&gt;
[[File:Time range contributions test.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:test_user_commit_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_gist_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_issue_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159571</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159571"/>
		<updated>2024-11-14T17:56:27Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Workflow Diagrams */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Design Pattern and Strategy=&lt;br /&gt;
Our main goal is to help present the user's activities on GitHub which includes comments, contributions, time range contributions and profiles. &lt;br /&gt;
&lt;br /&gt;
'''Frontend GUI (React)''':&lt;br /&gt;
* Implement an interactive UI for the users to display the information related to GitHub activities.&lt;br /&gt;
* To build a clean and robust frontend design to make it visually appealing.&lt;br /&gt;
&lt;br /&gt;
'''Backend (Flask)''':&lt;br /&gt;
* Integrate Flask API endpoints to fetch the data which includes user's comments, contributions, time range contributions and profiles on Github.&lt;br /&gt;
* Integrate and implement a GitHub token-based login feature to access the information.&lt;br /&gt;
&lt;br /&gt;
'''Workflow''':&lt;br /&gt;
* The backend system will fetch the data of the user's GitHub activities.&lt;br /&gt;
* It will pass this information to frontend which is fetched by React.&lt;br /&gt;
* After fetching the details from the backend system, it will display it in the form of UI.&lt;br /&gt;
&lt;br /&gt;
== Workflow Diagrams ==&lt;br /&gt;
&lt;br /&gt;
Phase 1:&lt;br /&gt;
[[File:Before-workflow-2401.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
Phase 2:&lt;br /&gt;
[[File:After-workflow-2401.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Phase 1 vs Phase 2: Key Differences ==&lt;br /&gt;
&lt;br /&gt;
=== Objective ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Develop a backend service using Flask to interact with the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Refactor the backend code to improve maintainability by using constants and develop a frontend using React.&lt;br /&gt;
&lt;br /&gt;
=== Backend Queries ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Use hard-coded strings for field names, node names, and arguments.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Replace hard-coded strings with reusable constants for fields, nodes, and arguments.&lt;br /&gt;
&lt;br /&gt;
=== API Endpoints ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Implement API endpoints for `/comments`, `/contributions`, `/profiles`, and `/time_range_contributions`.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Enhance endpoints with better code readability by using pre-defined constants.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No frontend implementation.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Develop a React-based frontend that allows users to interact with the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
=== Bulk Querying ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No support for bulk querying of usernames.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Implement a feature that allows users to upload a CSV containing GitHub usernames and retrieves their contribution metrics.&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Perform unit and integration tests for Flask endpoints.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Expand tests to include the refactored backend and React frontend functionality.&lt;br /&gt;
&lt;br /&gt;
=== Deliverables ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Deliver a functional backend that can query the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Deliver a refactored backend, React frontend, and CSV bulk query feature for GitHub metrics.&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time range contributions===&lt;br /&gt;
[[File:Time range contributions test.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:test_user_commit_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_gist_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_issue_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159570</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159570"/>
		<updated>2024-11-14T17:56:12Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Design Pattern and Strategy=&lt;br /&gt;
Our main goal is to help present the user's activities on GitHub which includes comments, contributions, time range contributions and profiles. &lt;br /&gt;
&lt;br /&gt;
'''Frontend GUI (React)''':&lt;br /&gt;
* Implement an interactive UI for the users to display the information related to GitHub activities.&lt;br /&gt;
* To build a clean and robust frontend design to make it visually appealing.&lt;br /&gt;
&lt;br /&gt;
'''Backend (Flask)''':&lt;br /&gt;
* Integrate Flask API endpoints to fetch the data which includes user's comments, contributions, time range contributions and profiles on Github.&lt;br /&gt;
* Integrate and implement a GitHub token-based login feature to access the information.&lt;br /&gt;
&lt;br /&gt;
'''Workflow''':&lt;br /&gt;
* The backend system will fetch the data of the user's GitHub activities.&lt;br /&gt;
* It will pass this information to frontend which is fetched by React.&lt;br /&gt;
* After fetching the details from the backend system, it will display it in the form of UI.&lt;br /&gt;
&lt;br /&gt;
== Workflow Diagrams ==&lt;br /&gt;
&lt;br /&gt;
Phase 1:&lt;br /&gt;
[[File:Before-workflow-2401.png|500px]]&lt;br /&gt;
&lt;br /&gt;
Phase 2:&lt;br /&gt;
[[File:After-workflow-2401.png|500px]]&lt;br /&gt;
&lt;br /&gt;
== Phase 1 vs Phase 2: Key Differences ==&lt;br /&gt;
&lt;br /&gt;
=== Objective ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Develop a backend service using Flask to interact with the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Refactor the backend code to improve maintainability by using constants and develop a frontend using React.&lt;br /&gt;
&lt;br /&gt;
=== Backend Queries ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Use hard-coded strings for field names, node names, and arguments.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Replace hard-coded strings with reusable constants for fields, nodes, and arguments.&lt;br /&gt;
&lt;br /&gt;
=== API Endpoints ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Implement API endpoints for `/comments`, `/contributions`, `/profiles`, and `/time_range_contributions`.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Enhance endpoints with better code readability by using pre-defined constants.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No frontend implementation.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Develop a React-based frontend that allows users to interact with the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
=== Bulk Querying ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No support for bulk querying of usernames.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Implement a feature that allows users to upload a CSV containing GitHub usernames and retrieves their contribution metrics.&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Perform unit and integration tests for Flask endpoints.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Expand tests to include the refactored backend and React frontend functionality.&lt;br /&gt;
&lt;br /&gt;
=== Deliverables ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Deliver a functional backend that can query the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Deliver a refactored backend, React frontend, and CSV bulk query feature for GitHub metrics.&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time range contributions===&lt;br /&gt;
[[File:Time range contributions test.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:test_user_commit_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_gist_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_issue_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159569</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=159569"/>
		<updated>2024-11-14T17:55:08Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Design Pattern and Strategy=&lt;br /&gt;
Our main goal is to help present the user's activities on GitHub which includes comments, contributions, time range contributions and profiles. &lt;br /&gt;
&lt;br /&gt;
'''Frontend GUI (React)''':&lt;br /&gt;
* Implement an interactive UI for the users to display the information related to GitHub activities.&lt;br /&gt;
* To build a clean and robust frontend design to make it visually appealing.&lt;br /&gt;
&lt;br /&gt;
'''Backend (Flask)''':&lt;br /&gt;
* Integrate Flask API endpoints to fetch the data which includes user's comments, contributions, time range contributions and profiles on Github.&lt;br /&gt;
* Integrate and implement a GitHub token-based login feature to access the information.&lt;br /&gt;
&lt;br /&gt;
'''Workflow''':&lt;br /&gt;
* The backend system will fetch the data of the user's GitHub activities.&lt;br /&gt;
* It will pass this information to frontend which is fetched by React.&lt;br /&gt;
* After fetching the details from the backend system, it will display it in the form of UI.&lt;br /&gt;
&lt;br /&gt;
== Workflow Diagrams ==&lt;br /&gt;
&lt;br /&gt;
Phase 1:&lt;br /&gt;
[[File:Before-workflow-2401.png|500px]&lt;br /&gt;
&lt;br /&gt;
Phase 2:&lt;br /&gt;
[[File:After-workflow-2401.png|500px]&lt;br /&gt;
== Phase 1 vs Phase 2: Key Differences ==&lt;br /&gt;
&lt;br /&gt;
=== Objective ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Develop a backend service using Flask to interact with the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Refactor the backend code to improve maintainability by using constants and develop a frontend using React.&lt;br /&gt;
&lt;br /&gt;
=== Backend Queries ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Use hard-coded strings for field names, node names, and arguments.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Replace hard-coded strings with reusable constants for fields, nodes, and arguments.&lt;br /&gt;
&lt;br /&gt;
=== API Endpoints ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Implement API endpoints for `/comments`, `/contributions`, `/profiles`, and `/time_range_contributions`.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Enhance endpoints with better code readability by using pre-defined constants.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No frontend implementation.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Develop a React-based frontend that allows users to interact with the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
=== Bulk Querying ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: No support for bulk querying of usernames.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Implement a feature that allows users to upload a CSV containing GitHub usernames and retrieves their contribution metrics.&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Perform unit and integration tests for Flask endpoints.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Expand tests to include the refactored backend and React frontend functionality.&lt;br /&gt;
&lt;br /&gt;
=== Deliverables ===&lt;br /&gt;
; Phase 1&lt;br /&gt;
: Deliver a functional backend that can query the GitHub GraphQL API.&lt;br /&gt;
; Phase 2&lt;br /&gt;
: Deliver a refactored backend, React frontend, and CSV bulk query feature for GitHub metrics.&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time range contributions===&lt;br /&gt;
[[File:Time range contributions test.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:test_user_commit_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_gist_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
[[File:test_user_issue_comments.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:After-workflow-2401.png&amp;diff=159568</id>
		<title>File:After-workflow-2401.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:After-workflow-2401.png&amp;diff=159568"/>
		<updated>2024-11-14T17:54:56Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Before-workflow-2401.png&amp;diff=159567</id>
		<title>File:Before-workflow-2401.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Before-workflow-2401.png&amp;diff=159567"/>
		<updated>2024-11-14T17:51:59Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158334</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158334"/>
		<updated>2024-10-30T02:49:59Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /time_range_contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:Time range contributions test.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158332</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158332"/>
		<updated>2024-10-30T02:49:45Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /time_range_contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[File:Time range contributions test.png|750px]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158330</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158330"/>
		<updated>2024-10-30T02:49:37Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Testing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[File:Time range contributions test.png}750px]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions_test.png&amp;diff=158322</id>
		<title>File:Time range contributions test.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions_test.png&amp;diff=158322"/>
		<updated>2024-10-30T02:48:46Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: testing results for time_range_contributions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: testing results for time_range_contributions&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions_test.webp&amp;diff=158304</id>
		<title>File:Time range contributions test.webp</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions_test.webp&amp;diff=158304"/>
		<updated>2024-10-30T02:46:19Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: testing results for time_range_contributions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: testing results for time_range_contributions&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158288</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158288"/>
		<updated>2024-10-30T02:41:20Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Key Objectives */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. &lt;br /&gt;
* Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158259</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158259"/>
		<updated>2024-10-30T02:32:18Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /time_range_contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/e659abccfa53588579d8074c560545eb6bd962dd Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158254</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158254"/>
		<updated>2024-10-30T02:31:23Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /contributions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/890d7b2e8bc0656f8b76aac593b4e8702851a41a Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158251</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158251"/>
		<updated>2024-10-30T02:30:28Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /comments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158248</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158248"/>
		<updated>2024-10-30T02:30:10Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/be08e09e3559367d2d27bdefaef946f166c2ee7d Git commit]&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158237</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158237"/>
		<updated>2024-10-30T02:28:38Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Constants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/48db85397252e609707e7fa34166d34d47e74416 Github commit]&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158232</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158232"/>
		<updated>2024-10-30T02:27:34Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 Github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158229</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158229"/>
		<updated>2024-10-30T02:26:47Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /comments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. &lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158228</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158228"/>
		<updated>2024-10-30T02:26:38Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. &lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
[https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158226</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158226"/>
		<updated>2024-10-30T02:26:06Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API. [https://github.ncsu.edu/vshegde2/GitHub_Miner/commit/c89243bfd4adf1740ca10d5a9e8b68e8b7074230 github commit]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158219</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158219"/>
		<updated>2024-10-30T02:23:52Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Testing=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158216</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158216"/>
		<updated>2024-10-30T02:22:34Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Constants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Flask_API_Endpoints | GraphQL queries]] reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158213</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158213"/>
		<updated>2024-10-30T02:22:13Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158212</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158212"/>
		<updated>2024-10-30T02:22:00Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Constants | Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158211</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158211"/>
		<updated>2024-10-30T02:21:34Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation | Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158210</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158210"/>
		<updated>2024-10-30T02:21:00Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics#Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158209</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158209"/>
		<updated>2024-10-30T02:20:38Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158204</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158204"/>
		<updated>2024-10-30T02:19:25Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE 517 Fall 2024:G2401 Refactor Graphql API endpoint for contribution metrics:Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158202</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158202"/>
		<updated>2024-10-30T02:18:56Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics:Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158201</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158201"/>
		<updated>2024-10-30T02:18:37Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[G2401 Refactor Graphql API endpoint for contribution metrics:Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158198</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158198"/>
		<updated>2024-10-30T02:17:30Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in [[Implementation]] can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158187</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158187"/>
		<updated>2024-10-30T02:15:09Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{main|Implementation:Link}} {{4|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158182</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158182"/>
		<updated>2024-10-30T02:13:47Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{4|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158181</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158181"/>
		<updated>2024-10-30T02:13:19Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{ll|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/profiles===&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158177</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158177"/>
		<updated>2024-10-30T02:12:33Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{ll|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
* /comments&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /contributions&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /profiles&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /time_range_contributions&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158175</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158175"/>
		<updated>2024-10-30T02:12:15Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{ll|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
* /comments&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /contributions&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|750px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /profiles&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|500px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /time_range_contributions&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158174</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158174"/>
		<updated>2024-10-30T02:11:56Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Flask API Endpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
We created the following Flask API endpoints so that the GraphQL queries refactored in {{ll|Implementation}} can be sent to the GitHub GraphQL API.&lt;br /&gt;
&lt;br /&gt;
* /comments&lt;br /&gt;
&lt;br /&gt;
[[File:Comments api endpoint.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /contributions&lt;br /&gt;
&lt;br /&gt;
[[File:Contributions.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /profiles&lt;br /&gt;
&lt;br /&gt;
[[File:Profiles.png|250px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* /time_range_contributions&lt;br /&gt;
&lt;br /&gt;
[[File:time_range_contributions.png|250px]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions.png&amp;diff=158154</id>
		<title>File:Time range contributions.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Time_range_contributions.png&amp;diff=158154"/>
		<updated>2024-10-30T02:04:06Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: api endpoint for time_range_contributions query&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: api endpoint for time_range_contributions query&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Profiles.png&amp;diff=158153</id>
		<title>File:Profiles.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Profiles.png&amp;diff=158153"/>
		<updated>2024-10-30T02:03:49Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: api endpoint for profiles query&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: api endpoint for profiles query&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Contributions.png&amp;diff=158150</id>
		<title>File:Contributions.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Contributions.png&amp;diff=158150"/>
		<updated>2024-10-30T02:03:33Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: api endpoint for contribution queries&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: api endpoint for contribution queries&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:Comments_api_endpoint.png&amp;diff=158145</id>
		<title>File:Comments api endpoint.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:Comments_api_endpoint.png&amp;diff=158145"/>
		<updated>2024-10-30T02:03:11Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: G2401: api endpoint for comments queries&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
G2401: api endpoint for comments queries&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158137</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158137"/>
		<updated>2024-10-30T01:58:08Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158133</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158133"/>
		<updated>2024-10-30T01:57:07Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* /comments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158131</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158131"/>
		<updated>2024-10-30T01:56:54Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158129</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158129"/>
		<updated>2024-10-30T01:56:13Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158126</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158126"/>
		<updated>2024-10-30T01:55:17Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158124</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158124"/>
		<updated>2024-10-30T01:54:31Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Constants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158123</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158123"/>
		<updated>2024-10-30T01:54:16Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Field Constants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|500px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158121</id>
		<title>CSC/ECE 517 Fall 2024 - G2401 Refactor Graphql API endpoint for contribution metrics</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2024_-_G2401_Refactor_Graphql_API_endpoint_for_contribution_metrics&amp;diff=158121"/>
		<updated>2024-10-30T01:54:07Z</updated>

		<summary type="html">&lt;p&gt;Knaylor: /* Constants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Expertiza=&lt;br /&gt;
&lt;br /&gt;
Expertiza is an open-source project built using Ruby on Rails. It provides a platform for instructors and students to manage, submit, and evaluate assignments and projects. Instructors can create, edit, and grade assignments, while students can collaborate in teams, submit their work, and review peers' submissions. Expertiza supports submission across various document types, including URLs and wiki pages.&lt;br /&gt;
&lt;br /&gt;
=Project Description=&lt;br /&gt;
&lt;br /&gt;
Refactor the GraphQL API endpoint for contribution metrics by &lt;br /&gt;
*  replacing hard-coded variables with reusable constants&amp;lt;/li&amp;gt;&lt;br /&gt;
*  implementing and publishing GraphQL queries as Flask endpoints so that the queries can be sent to the GitHub GraphQL API using a URL.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Key Objectives=&lt;br /&gt;
API Endpoint Development:&lt;br /&gt;
&lt;br /&gt;
* Integrate existing code with Flask to expose GraphQL queries as API endpoints.&lt;br /&gt;
&lt;br /&gt;
Testing and Validation:&lt;br /&gt;
&lt;br /&gt;
* Conduct thorough testing (unit tests and integration tests) to verify the correctness and reliability of the implemented endpoints. Validate API functionality across different scenarios to ensure robustness and reliability.&lt;br /&gt;
&lt;br /&gt;
=Implementation=&lt;br /&gt;
&lt;br /&gt;
Each query was refactored by replacing hard-coded variables with new constants defined in the section [[Constants#Constants]]&lt;br /&gt;
&lt;br /&gt;
===/comments===&lt;br /&gt;
&lt;br /&gt;
* user_commit_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User commit comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_gist_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User gist comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issue_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User issue comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_repository_discussion_comments&lt;br /&gt;
&lt;br /&gt;
[[File:User repo discussion comments.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===/contributions===&lt;br /&gt;
&lt;br /&gt;
* user_gists&lt;br /&gt;
&lt;br /&gt;
[[File:User gists.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_issues&lt;br /&gt;
&lt;br /&gt;
[[File:User issues.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
* user_pull_requests&lt;br /&gt;
&lt;br /&gt;
[[File:User pull requests.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===/time_range_contributions===&lt;br /&gt;
&lt;br /&gt;
* user_contributions_collection&lt;br /&gt;
&lt;br /&gt;
[[File:User contributions collections.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Constants=&lt;br /&gt;
&lt;br /&gt;
Field constants, node constants, and argument constants were all added to the codebase for reusability. Many of the GraphQL queries reference these variables multiple times.&lt;br /&gt;
&lt;br /&gt;
===Field Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:field constants.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===Node Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:node constants.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
===Argument Constants===&lt;br /&gt;
&lt;br /&gt;
[[File:argument constants.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
=Flask API Endpoints=&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Mentor:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jialin Cui&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Team Members:&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anjan Jagadishbhai Diyora&lt;br /&gt;
&lt;br /&gt;
Vighnesh Hegde&lt;br /&gt;
&lt;br /&gt;
Kaylie Naylor&lt;br /&gt;
&lt;br /&gt;
=Github Repository=&lt;br /&gt;
&lt;br /&gt;
original: https://github.ncsu.edu/jcui9/GitHub_Miner&lt;br /&gt;
&lt;br /&gt;
forked: https://github.ncsu.edu/vshegde2/GitHub_Miner&lt;/div&gt;</summary>
		<author><name>Knaylor</name></author>
	</entry>
</feed>