{"id":22407318,"url":"https://github.com/sv592/github_graph_ql","last_synced_at":"2026-05-06T04:02:24.476Z","repository":{"id":264342181,"uuid":"864369663","full_name":"SV592/github_graph_ql","owner":"SV592","description":"React-based web application that interfaces with the GitHub GraphQL API, allowing users to search and retrieve detailed information about GitHub repositories, for collecting/exploring repository data using GraphQL queries.","archived":false,"fork":false,"pushed_at":"2025-01-13T04:11:31.000Z","size":494,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-06T15:03:06.610Z","etag":null,"topics":["github","graphql","javascript","react"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SV592.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-28T03:41:56.000Z","updated_at":"2025-01-13T04:11:34.000Z","dependencies_parsed_at":"2025-02-01T07:24:57.419Z","dependency_job_id":"f9147c3f-009f-4380-8498-f8a92c269d04","html_url":"https://github.com/SV592/github_graph_ql","commit_stats":null,"previous_names":["sv592/github_graph_ql"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SV592/github_graph_ql","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SV592%2Fgithub_graph_ql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SV592%2Fgithub_graph_ql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SV592%2Fgithub_graph_ql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SV592%2Fgithub_graph_ql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SV592","download_url":"https://codeload.github.com/SV592/github_graph_ql/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SV592%2Fgithub_graph_ql/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32677933,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T02:33:58.958Z","status":"ssl_error","status_checked_at":"2026-05-06T02:33:39.611Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","graphql","javascript","react"],"created_at":"2024-12-05T11:13:49.295Z","updated_at":"2026-05-06T04:02:24.431Z","avatar_url":"https://github.com/SV592.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub GraphQL Explorer App\n\nThis project is a **React-based web application** that interfaces with the GitHub GraphQL API, allowing users to search and retrieve detailed information about GitHub repositories, for collecting/exploring repository data using GraphQL queries.\n\n---\n\n## 🚀 Features\n\n### **Implemented Features**\n1. **GitHub Token Integration**\n   - Users can enter their GitHub tokens for authenticated requests.\n   - Supports drag-and-drop upload of `.txt` or `.csv` files containing multiple tokens.\n   - Validates tokens using the GitHub API, with error and success indicators:\n     - Errors are displayed with a red box and message.\n     - Valid tokens are confirmed with a green success message.\n\n2. **Search Functionality**\n   - Users can search for repositories using:\n     - GitHub repository links (e.g., `https://github.com/user/repo`).\n     - Direct slugs (e.g., `user/repo`).\n   - Drag-and-drop support for uploading `.txt` or `.csv` files with multiple repository URLs.\n\n3. **Data Parsing and Validation**\n   - Repository links are parsed to extract slugs (`owner/repo` format).\n   - Validates input data to ensure only GitHub URLs or valid slugs are processed.\n\n4. **GraphQL Queries**\n   - Retrieves repository information using GitHub's GraphQL API.\n   - Query data includes:\n     - Repository name\n     - Description\n     - Fork count\n     - Star count\n     - Creation date\n     - Archived status\n     - Visibility level\n     - URL\n\n5. **Rate-Limit Warning**\n   - Displays a note to unauthenticated users about the GitHub API rate limit (60 requests per hour).\n   - Encourages token usage for higher request limits.\n\n6. **Responsive Design**\n   - Ensures seamless usage across desktop and mobile devices.\n   - Media queries handle layout adjustments for smaller screens.\n\n---\n\n## 📌 Planned Features\n1. **Pagination for Results**\n   - Handle large result sets by allowing users to navigate through pages.\n\n2. **Enhanced Query Builder**\n   - Include more customizable options for users to select specific fields from the GraphQL API.\n\n3. **Save and Export Results**\n   - Allow users to download the fetched repository information as a `.csv` or `.json` file.\n\n4. **Multi-Token Management**\n   - Enable rotating between multiple GitHub tokens to avoid rate limits.\n\n5. **Advanced Error Handling**\n   - Provide detailed error messages for API failures, such as rate limit errors or invalid repository inputs.\n\n6. **User Authentication**\n   - Implement GitHub OAuth for a seamless and secure login process.\n\n7. **Visualize Repository Data**\n   - Add charts and graphs to display repository statistics like stars, forks, and activity trends.\n\n---\n\n## 💻 Getting Started\n\n### **Prerequisites**\n- [Node.js](https://nodejs.org/en/)\n- A GitHub token with `read` permissions.\n\n### **Installation**\n1. Clone this repository:\n   ```bash\n   git clone https://github.com/SV592/github_graph_ql.git\n   cd github_graph_ql\n   npm install\n   npm start\n\n### Usage \n- Enter your GitHub token or upload a file containing tokens.\n- Input GitHub repository links or slugs into the search bar or upload a file with repository links.\n- Click \"Search\" to retrieve and display repository information.\n\n### 🛠 Technologies Used\n- Frontend: React.js\n- API: GitHub GraphQL API\n- Styling: CSS with media queries for responsiveness\n- File Handling: React Dropzone\n- Error Handling: Client-side validation and API response management\n\n### Screenshots\n![image](https://github.com/user-attachments/assets/5aaa9f57-f8ed-4eab-825a-eb494ed523fc)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsv592%2Fgithub_graph_ql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsv592%2Fgithub_graph_ql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsv592%2Fgithub_graph_ql/lists"}