{"id":25171321,"url":"https://github.com/basemax/studentgraphqlts","last_synced_at":"2026-03-04T04:32:27.392Z","repository":{"id":182134607,"uuid":"666155964","full_name":"BaseMax/StudentGraphQLTS","owner":"BaseMax","description":"StudentGraphQLTS is a GraphQL-based system built with TypeScript that allows universities, students, and professors to interact and manage academic information. This system provides an API to query and manipulate data related to students, professors, courses, and other university-related entities.","archived":false,"fork":false,"pushed_at":"2026-02-16T18:58:20.000Z","size":783,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-17T01:33:21.949Z","etag":null,"topics":["graphql","javascript","js","student","student-graphql","ts","typescript","university"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BaseMax.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-13T21:03:46.000Z","updated_at":"2026-02-16T18:58:16.000Z","dependencies_parsed_at":"2025-10-24T07:30:50.674Z","dependency_job_id":null,"html_url":"https://github.com/BaseMax/StudentGraphQLTS","commit_stats":null,"previous_names":["basemax/studentgraphqlts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BaseMax/StudentGraphQLTS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BaseMax%2FStudentGraphQLTS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BaseMax%2FStudentGraphQLTS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BaseMax%2FStudentGraphQLTS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BaseMax%2FStudentGraphQLTS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BaseMax","download_url":"https://codeload.github.com/BaseMax/StudentGraphQLTS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BaseMax%2FStudentGraphQLTS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30071687,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T03:25:38.285Z","status":"ssl_error","status_checked_at":"2026-03-04T03:25:05.086Z","response_time":59,"last_error":"SSL_read: 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":["graphql","javascript","js","student","student-graphql","ts","typescript","university"],"created_at":"2025-02-09T09:19:51.470Z","updated_at":"2026-03-04T04:32:27.325Z","avatar_url":"https://github.com/BaseMax.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StudentGraphQLTS - GraphQL-based University/Student System (TypeScript)\n\nStudentGraphQLTS is a GraphQL-based system built with TypeScript that allows universities, students, and professors to interact and manage academic information. This system provides an API to query and manipulate data related to students, professors, courses, and other university-related entities.\n\n## Screenshots\n![graphql](https://raw.githubusercontent.com/BaseMax/StudentGraphQLTS/main/screenshots/Screenshot%20from%202023-07-19%2023-28-08.png)\n![graphql](https://raw.githubusercontent.com/BaseMax/StudentGraphQLTS/main/screenshots/Screenshot%20from%202023-07-19%2023-28-51.png)\n![graphql](https://raw.githubusercontent.com/BaseMax/StudentGraphQLTS/main/screenshots/Screenshot%20from%202023-07-19%2023-32-38.png)\n![graphql](https://raw.githubusercontent.com/BaseMax/StudentGraphQLTS/main/screenshots/Screenshot%20from%202023-07-19%2023-32-54.png)\n![graphql](https://raw.githubusercontent.com/BaseMax/StudentGraphQLTS/main/screenshots/Screenshot%20from%202023-07-19%2023-33-35.png)\n\n## Queries\n\nThe following queries are available:\n\n- `getMyConversations`: Receive all student conversations.\n- `getConversationMessages`: Receive all student conversations messages.\n- `getAllGraduateStudents`: Receiving all graduated students.\n- `getAllDismissedStudents`: Receiving all dismissed students.\n- `conversation`: Retrieves a special conversation information.\n- `student`: Retrieves a special student information.\n- `seminar`: Retrieves a special seminar information.\n- `dissertation`: Retrieves a special dissertation information.\n- `supervisor`: Retrieves a special supervisor information.\n\n## Mutations\n\nThe following mutations are available:\n\n- `sendCode`: send email verification code.\n- `register`: Registers a new student in the system.\n- `login`: Login student in system\n- `createSupervisor`: Create a new supervisor. required role: admin.\n- `addEducational`: Adds the Educational information for a supervisor.\n- `selectSupervisor`: Selection of supervisor by the student.\n- `createConversation`: create a Conversation between the student and the supervisor.\n- `sendMessage`: Sending messages by students and supervisors.\n- `doneConversation`: End the conversation.\n- `completeProfile`: Complete the student profile.\n- `createSeminar`: Making the seminar by the student.\n- `createDissertation`: Making the Dissertation by the student.\n- `addForm`: Adding forms step by step for seminars and Dissertation.\n\nnote: there are such mutations for updating and deleting seminars, dissertation, students, etc. by the admin. which is available in the documents.\n\n## Getting Started\n\nTo run the StudentGraphQLTS project locally, follow these steps:\n\nClone the repository:\n```bash\ngit clone https://github.com/BaseMax/StudentGraphQLTS\n```\n\nNavigate to the project directory:\n```bash\ncd StudentGraphQLTS\n```\n\nInstall the dependencies:\n```bash\nnpm install\n```\n\nBuild the project:\n```bash\nnpm run build\n```\n\nStart the server:\n```bash\nnpm start\n```\n\nOnce the server is running, you can access the GraphQL API at `http://localhost:4000/graphql`.\n\n## Configuration\n\nBefore running the project, you need to configure the following settings in the .env file:\n\n- `DATABASE_URL`: This is the connection URL for the PostgreSQL database. Replace postgres with your database username and password, and `localhost:5432/student?schema=public` with your database host and port.\n\n- `SECRET_KEY`: Set this to a secure secret key for your application.\n\n- `MAIL_HOST`: The hostname or IP address of the mail server.\n\n- `MAIL_PORT`: The port number for the mail server.\n\n- `MAIL_USER`: The username or email address used to authenticate with the mail server.\n\n- `MAIL_PASSWORD`: The password for the mail server authentication.\n\n## Testing\n\nTo run the tests, use the following command:\n\n```shell\nnpm run test:e2e\n```\n\nThis will execute the test suite and provide the test results.\n\n## Dependencies\n\nThe project relies on the following dependencies:\n\n- `nestjs`: Web framework for Node.js.\n- `graphql`: GraphQL implementation for JavaScript.\n- `graphql-tools`: Tools for building and manipulating GraphQL schemas.\n- `apollo-server-express`: Integration of Apollo Server with Express.\n- `typescript`: TypeScript compiler and language tools.\n\nPlease ensure that these dependencies are installed before running the project.\n\n## License\n\nThis project is licensed under the GPL-3.0 License. Feel free to use and modify the code as per your requirements.\n\nCopyright 2023, Max Base\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasemax%2Fstudentgraphqlts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbasemax%2Fstudentgraphqlts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasemax%2Fstudentgraphqlts/lists"}