{"id":25332217,"url":"https://github.com/kotelnikovav/event-link","last_synced_at":"2026-04-12T15:08:40.276Z","repository":{"id":270309365,"uuid":"909959911","full_name":"KotelnikovAV/explore-with-me-microservices","owner":"KotelnikovAV","description":"Project for self-development","archived":false,"fork":false,"pushed_at":"2025-03-03T15:17:25.000Z","size":342,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T10:19:35.814Z","etag":null,"topics":["docker","grpc","hibernate-orm","java","kafka","maven","postgresql","rest","spring-boot","spring-cloud"],"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/KotelnikovAV.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-12-30T06:43:35.000Z","updated_at":"2025-03-03T15:17:28.000Z","dependencies_parsed_at":"2025-03-03T16:37:19.818Z","dependency_job_id":null,"html_url":"https://github.com/KotelnikovAV/explore-with-me-microservices","commit_stats":null,"previous_names":["kotelnikovav/java-plus-graduation","kotelnikovav/event-link","kotelnikovav/explore-with-me-microservices"],"tags_count":0,"template":false,"template_full_name":"yandex-praktikum/java-plus-graduation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KotelnikovAV%2Fexplore-with-me-microservices","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KotelnikovAV%2Fexplore-with-me-microservices/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KotelnikovAV%2Fexplore-with-me-microservices/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KotelnikovAV%2Fexplore-with-me-microservices/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KotelnikovAV","download_url":"https://codeload.github.com/KotelnikovAV/explore-with-me-microservices/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247792899,"owners_count":20996893,"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-orm","java","kafka","maven","postgresql","rest","spring-boot","spring-cloud"],"created_at":"2025-02-14T04:31:30.724Z","updated_at":"2026-04-12T15:08:40.239Z","avatar_url":"https://github.com/KotelnikovAV.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Приложение Explore with me.\n## 1. Описание проекта.\n### 1.1 Идея приложения.\nExplore with me это платформа для поиска и обмена информацией о мероприятиях. Пользователи могут публиковать, редактировать \nи удалять события, а также находить единомышленников для участия в них через удобный интерфейс.  \nСвободное время — ценный ресурс. Ежедневно мы планируем, как его потратить — куда и с кем сходить. \nСложнее всего в таком планировании поиск информации и переговоры. Нужно учесть много деталей: какие намечаются \nмероприятия, свободны ли в этот момент друзья, как всех пригласить и где собраться.  \nОсновная цель - разбиение монолита на микросервисы, введение в рекомендательные системы.\n### 1.2 Основная функциональность приложения.\nПриложение состоит из публичного, приватного и административного API. Также приложение содержит в себе рекомендательный сервис.  \n\nОсновная функциональность публичного API:  \n- просмотр списка всех опубликованных мероприятий в краткой форме;\n- просмотр конкретного мероприятия в расширенной форме.\n\nОсновная функциональность приватного API для авторизованного пользователя:\n- публикация и редактирование мероприятий;\n- возможность подавать заявку на участие в мероприятии, а также ее редактирование до момента получения подтверждения;\n- возможность подтверждать или отклонять входящие заявки на созданное им мероприятие;\n- возможность ставить лайки посещенным мероприятиям, на основании которых формируется внешний рейтинг мероприятий \nи пользователей, опубликовавших их;\n- возможность получения списка рекомендуемых мероприятий на основании взаимодействий его и на него похожих пользователей \nс другими мероприятиями.\n\nОсновная функциональность административного API:\n- модерация опубликованных событий (подтверждение или отклонение публикации мероприятий).\n\nОсновная функциональность рекомендательного сервиса:\n- сбор и агрегация действий авторизованных пользователей;\n- получение списка рекомендуемых мероприятий для конкретного пользователя;\n- предсказание действия, которое совершит конкретный пользователь над конкретным мероприятием.\n\n### 1.3 Стек используемых технологий.\nОсновные технологии и инструменты, используемые в данном проекте:\n- Java (Amazon Corretto 21.0.6);\n- Maven;\n- Spring Boot;\n- Spring Cloud;\n- PostgreSQL;\n- Hibernate ORM;\n- Docker;\n- Kafka;\n- REST;\n- gRPC.\n\n## 2. Инструкция по развертыванию проекта.\nДля запуска приложения необходимо:\n- склонировать проект: https://github.com/KotelnikovAV/explore-with-me-microservices.git;\n- открыть проект с помощью IntelliJ IDEA и выполнить команду mvn package;\n- запустить исполнение файла docker-compose.yml.  \n\nПосле успешного исполнения файла docker-compose.yml приложение будет доступно на порту 8080.\n\n## 3. Техническая документация проекта.\nСпецификация API в формате openapi: [main-service-spec.json](https://github.com/user-attachments/files/19055434/main-service-spec.json)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkotelnikovav%2Fevent-link","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkotelnikovav%2Fevent-link","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkotelnikovav%2Fevent-link/lists"}