{"id":23876735,"url":"https://github.com/muhammadabyaz/student-mgt-system","last_synced_at":"2026-04-28T12:35:04.041Z","repository":{"id":270609174,"uuid":"910789194","full_name":"MuhammadAbyaz/student-mgt-system","owner":"MuhammadAbyaz","description":"A simple API for Student Management System","archived":false,"fork":false,"pushed_at":"2025-01-04T15:40:03.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T21:29:38.728Z","etag":null,"topics":["air","docker-compose","gin-gonic","go","godotenv","golang","postgresql"],"latest_commit_sha":null,"homepage":"","language":"Go","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/MuhammadAbyaz.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-01T12:37:52.000Z","updated_at":"2025-01-04T15:40:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"4228210f-8aac-4e8a-bf62-c1dd5ab8f955","html_url":"https://github.com/MuhammadAbyaz/student-mgt-system","commit_stats":null,"previous_names":["muhammadabyaz/student-mgt-system"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MuhammadAbyaz/student-mgt-system","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAbyaz%2Fstudent-mgt-system","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAbyaz%2Fstudent-mgt-system/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAbyaz%2Fstudent-mgt-system/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAbyaz%2Fstudent-mgt-system/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MuhammadAbyaz","download_url":"https://codeload.github.com/MuhammadAbyaz/student-mgt-system/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAbyaz%2Fstudent-mgt-system/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32381686,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-28T11:25:28.583Z","status":"ssl_error","status_checked_at":"2026-04-28T11:25:05.435Z","response_time":56,"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":["air","docker-compose","gin-gonic","go","godotenv","golang","postgresql"],"created_at":"2025-01-03T19:29:05.637Z","updated_at":"2026-04-28T12:35:04.034Z","avatar_url":"https://github.com/MuhammadAbyaz.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Student Management System API\n\nAn API for managing student records, built using Golang and the Gin web framework. This system includes functionalities for creating, updating, deleting, and retrieving student data, as well as login and registration for administrators.\n\n## Features\n\n- **CRUD Operations for Students**:\n  - Create new student records\n  - Retrieve individual student records\n  - Retrieve all student records\n  - Update existing student records\n  - Delete student records\n- **Admin Authentication**:\n  - Register as an admin\n  - Login as an admin\n\n## Technologies Used\n\n- **Backend**: Golang (Gin framework)\n- **Database**: PostgreSQL\n- **Authentication**: JWT\n\n## Installation and Setup\n\n1. Clone the repository:\n\n   ```bash\n   git clone git@github.com:MuhammadAbyaz/student-mgt-system.git\n   cd student-management-system\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   go mod tidy\n   ```\n\n3. Configure the database:\n   - Update the database configuration in `.env` file.\n\n4. Run the docker container:\n    ```bash\n    docker compose up -d\n    ```\n\n5. Run the application:\n\n   ```bash\n   go run main.go\n   ```\n\n6. The server will start at `http://localhost:8080/api/v1`.\n\n## API Endpoints\n\n### Student Routes\n\n1. **Create Student**\n   - `POST /student`\n   - **Description**: Add a new student.\n   - **Request Body**:\n     ```json\n     {\n       \"firstName\": \"John\",\n       \"lastName\": \"Doe\"\n     }\n     ```\n\n2. **Get Student by ID**\n   - `GET /student/:id`\n   - **Description**: Retrieve a specific student by their ID.\n\n3. **Get All Students**\n   - `GET /students`\n   - **Description**: Retrieve all student records.\n\n4. **Update Student**\n   - `PATCH /student/:id`\n   - **Description**: Update a student's details.\n   - **Request Body**:\n     ```json\n     {\n       \"firstName\": \"Jane\",\n       \"lastName\": \"Dane\"\n     }\n     ```\n\n5. **Delete Student**\n   - `DELETE /student/:id`\n   - **Description**: Delete a student by their ID.\n\n### Admin Routes\n\n1. **Register Admin**\n   - `POST /auth/register`\n   - **Description**: Register a new admin.\n   - **Request Body**:\n     ```json\n     {\n       \"name\": \"admin\",\n       \"email\": \"admin@example.com\",\n       \"password\": \"xyzpassword\"\n     }\n     ```\n\n2. **Login Admin**\n   - `POST /auth/login`\n   - **Description**: Login as an admin.\n   - **Request Body**:\n     ```json\n     {\n       \"email\": \"admin@example.com\",\n       \"password\": \"xyzpassword\"\n     }\n     ```\n\n## Author\n\nMuhammad Abyaz Khalid\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhammadabyaz%2Fstudent-mgt-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmuhammadabyaz%2Fstudent-mgt-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhammadabyaz%2Fstudent-mgt-system/lists"}