{"id":18322380,"url":"https://github.com/mattakvshi/near-backend","last_synced_at":"2025-04-05T23:30:59.437Z","repository":{"id":229783998,"uuid":"703653916","full_name":"mattakvshi/NEAR-backend","owner":"mattakvshi","description":"My project NEAR is a platform for providing notification to the public about emergency situations.  This is my training project, at the moment it consists of 5 microservices, not counting copies of the workers. Technologies such as Java, Spring Boot, Rest API, gRPC, Kafka, PostgreSQL, Redis, Docker, Kubernetes and others are used.","archived":false,"fork":false,"pushed_at":"2025-01-13T15:21:09.000Z","size":382,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T13:23:03.648Z","etag":null,"topics":["docker","grpc","hibernate","java","kafka","microservice","postgresql","redis","rest-api","spring-boot","telegram-bot"],"latest_commit_sha":null,"homepage":"https://mattakvshi.github.io/NEAR-frontend/","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/mattakvshi.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":"2023-10-11T16:36:53.000Z","updated_at":"2025-01-13T15:21:13.000Z","dependencies_parsed_at":"2024-03-26T08:38:50.446Z","dependency_job_id":"a51ff454-bec8-4d2b-96dd-2a2209d55610","html_url":"https://github.com/mattakvshi/NEAR-backend","commit_stats":null,"previous_names":["mattakvshi/near-backend"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattakvshi%2FNEAR-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattakvshi%2FNEAR-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattakvshi%2FNEAR-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattakvshi%2FNEAR-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mattakvshi","download_url":"https://codeload.github.com/mattakvshi/NEAR-backend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247415783,"owners_count":20935383,"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","grpc","hibernate","java","kafka","microservice","postgresql","redis","rest-api","spring-boot","telegram-bot"],"created_at":"2024-11-05T18:24:27.451Z","updated_at":"2025-04-05T23:30:58.810Z","avatar_url":"https://github.com/mattakvshi.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NEAR-backend\n\n## Used stack\n\n- Java\n- Spring\n- PostgreSQL\n- MongoDB\n- Redis\n- Apache Kafka\n- Doker\n- Kubernetes\n- Nginx\n\n# Implemented services:\n\nThe architecture is built according to the Citadel pattern:\n\n- [NEAR API](https://github.com/mattakvshi/NEAR-backend/tree/main/NEAR%20API)  - The main service that contains all the endpoints and is responsible for interacting with the client software. This service processes all user information, works with the main database and transmits the necessary data to Kafka when sending notifications. \n- [TelegeramWorker](https://github.com/mattakvshi/NEAR-backend/tree/main/TelegramWorker) - The worker service for sending notifications via telegram.\n- [EmailWorker](https://github.com/mattakvshi/NEAR-backend/tree/main/EmailWorker) - The worker service for sending notifications via mail. \n- [MobilePushWorker](https://github.com/mattakvshi/NEAR-backend/tree/main/MobilePushWorker) - The worker service for sending notifications via push notification. \n- [gRPC-gateway](https://github.com/mattakvshi/NEAR-backend/tree/main/grpc-gateway) - A service for connecting the tg bot and the main API.\n\n![1](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Презентация%20продукта/71c5bd96130e7b6d96c14cdbc53d7383-9.png?raw=true)\n![2](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Презентация%20продукта/71c5bd96130e7b6d96c14cdbc53d7383-10.png?raw=true)\n\n# More info\n\nMore information can be found in README.md a repository with a [frontend](https://github.com/mattakvshi/NEAR-frontend).\n\n![3](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Log%20in%20group/NEAR-landing.png?raw=true)\n![4](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Презентация%20продукта/71c5bd96130e7b6d96c14cdbc53d7383-11.png?raw=true)\n![5](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Log%20in%20group/NEAR-LogInCommunity.png)\n![6](https://github.com/mattakvshi/NEAR-frontend/blob/master/Макеты%20frontend/Презентация%20продукта/71c5bd96130e7b6d96c14cdbc53d7383-15.png?raw=true)\n\n# Getting Started\n\n### Reference Documentation\n\nFor further reference, please consider the following sections:\n\n- [Official Apache Maven documentation](https://maven.apache.org/guides/index.html)\n- [Spring Boot Maven Plugin Reference Guide](https://docs.spring.io/spring-boot/docs/3.3.1/maven-plugin/reference/html/)\n- [Create an OCI image](https://docs.spring.io/spring-boot/docs/3.3.1/maven-plugin/reference/html/#build-image)\n- [Spring Boot DevTools](https://docs.spring.io/spring-boot/docs/3.3.1/reference/htmlsingle/index.html#using.devtools)\n- [Spring Web](https://docs.spring.io/spring-boot/docs/3.3.1/reference/htmlsingle/index.html#web)\n- [Spring Security](https://docs.spring.io/spring-boot/docs/3.3.1/reference/htmlsingle/index.html#web.security)\n- [Spring Data JPA](https://docs.spring.io/spring-boot/docs/3.3.1/reference/htmlsingle/index.html#data.sql.jpa-and-spring-data)\n\n### Guides\n\nThe following guides illustrate how to use some features concretely:\n\n- [Building a RESTful Web Service](https://spring.io/guides/gs/rest-service/)\n- [Serving Web Content with Spring MVC](https://spring.io/guides/gs/serving-web-content/)\n- [Building REST services with Spring](https://spring.io/guides/tutorials/rest/)\n- [Securing a Web Application](https://spring.io/guides/gs/securing-web/)\n- [Spring Boot and OAuth2](https://spring.io/guides/tutorials/spring-boot-oauth2/)\n- [Authenticating a User with LDAP](https://spring.io/guides/gs/authenticating-ldap/)\n- [Accessing Data with JPA](https://spring.io/guides/gs/accessing-data-jpa/)\n\n### Maven Parent overrides\n\nDue to Maven's design, elements are inherited from the parent POM to the project POM.\nWhile most of the inheritance is fine, it also inherits unwanted elements like `\u003clicense\u003e` and `\u003cdevelopers\u003e` from the parent.\nTo prevent this, the project POM contains empty overrides for these elements.\nIf you manually switch to a different parent and actually want the inheritance, you need to remove those overrides.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattakvshi%2Fnear-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmattakvshi%2Fnear-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattakvshi%2Fnear-backend/lists"}