{"id":15157904,"url":"https://github.com/kamil20020/Students-spring-cloud_09-2024","last_synced_at":"2025-10-24T14:31:17.855Z","repository":{"id":256284706,"uuid":"854820786","full_name":"kamil20020/Students-spring-cloud_09-2024","owner":"kamil20020","description":"Simple students management backend app for learning purposes. It is possible to manage students, courses and classes. The app was created in microservice architecture using Spring Cloud and its popular modules e.g. eureka support","archived":false,"fork":false,"pushed_at":"2024-10-28T12:33:32.000Z","size":3356,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-31T02:04:16.867Z","etag":null,"topics":["docker","docker-compose","lombok","pgadmin","postgresql","rabbitmq","spring","spring-amqp","spring-boot","spring-boot-validation","spring-cloud","spring-cloud-config","spring-cloud-gateway","spring-cloud-loadbalancer","spring-cloud-netflix-eureka","spring-data-jpa","spring-web","zipkin"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kamil20020.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-09T20:41:54.000Z","updated_at":"2024-11-22T18:31:43.000Z","dependencies_parsed_at":"2024-09-22T06:41:08.944Z","dependency_job_id":null,"html_url":"https://github.com/kamil20020/Students-spring-cloud_09-2024","commit_stats":{"total_commits":9,"total_committers":1,"mean_commits":9.0,"dds":0.0,"last_synced_commit":"bb8d290ff8faa3bff7a4855084ff4ac8e61740a6"},"previous_names":["kamil20020/students-spring-cloud","kamil20020/students-spring-cloud_16-09-2024"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamil20020%2FStudents-spring-cloud_09-2024","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamil20020%2FStudents-spring-cloud_09-2024/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamil20020%2FStudents-spring-cloud_09-2024/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamil20020%2FStudents-spring-cloud_09-2024/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kamil20020","download_url":"https://codeload.github.com/kamil20020/Students-spring-cloud_09-2024/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237982337,"owners_count":19397246,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","lombok","pgadmin","postgresql","rabbitmq","spring","spring-amqp","spring-boot","spring-boot-validation","spring-cloud","spring-cloud-config","spring-cloud-gateway","spring-cloud-loadbalancer","spring-cloud-netflix-eureka","spring-data-jpa","spring-web","zipkin"],"created_at":"2024-09-26T20:20:27.494Z","updated_at":"2025-10-24T14:31:13.940Z","avatar_url":"https://github.com/kamil20020.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Students - Spring Cloud project for learning purposes\nThe app is complete with my previous assumptions.\n \n## Running app\nApp can be started by running command `docker-compose up` in the `code` directory (about 14 containers).\n\n## App architecture:\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"project/architecture.png\"/\u003e\n\u003c/p\u003e\n\nMost important info:\n* Student microservice - endpoints useful for managing students' data,\n* Course microservice - endpoints useful for managing courses,\n* Classrom microservice - endpoints useful for managing classes. This server mainly uses student and course microservices e.g. student can be assigned to the specific class and a class is an instance of the specific course,\n* Event microservice - stores events from the classroom (only classroom database changes),\n* Eureka - microservices communicate with each other by using their names registered in the eureka server. Because of this, there is no need to hardcode host names and ports of microservices many times.\n\n## API documentation:\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"api-doc/student.png\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"api-doc/course.png\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"api-doc/classroom.png\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"api-doc/event.png\"/\u003e\n\u003c/p\u003e\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkamil20020%2FStudents-spring-cloud_09-2024","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkamil20020%2FStudents-spring-cloud_09-2024","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkamil20020%2FStudents-spring-cloud_09-2024/lists"}