{"id":18760823,"url":"https://github.com/sarakhild/chat-hub","last_synced_at":"2025-08-21T09:12:17.199Z","repository":{"id":252049745,"uuid":"839238561","full_name":"SaraKhild/chat-hub","owner":"SaraKhild","description":"Through this project, all messages are broadcasted in real-time to all connected clients while maintaining a complete history of conversations.","archived":false,"fork":false,"pushed_at":"2024-08-07T09:00:48.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-20T17:50:45.581Z","etag":null,"topics":["redis","redisson","spring-webflux","webscoket"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/SaraKhild.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-08-07T08:08:12.000Z","updated_at":"2024-08-07T09:00:51.000Z","dependencies_parsed_at":"2024-08-07T12:44:16.608Z","dependency_job_id":null,"html_url":"https://github.com/SaraKhild/chat-hub","commit_stats":null,"previous_names":["sarakhild/chat-hub"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SaraKhild/chat-hub","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fchat-hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fchat-hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fchat-hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fchat-hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SaraKhild","download_url":"https://codeload.github.com/SaraKhild/chat-hub/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fchat-hub/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271455361,"owners_count":24762703,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["redis","redisson","spring-webflux","webscoket"],"created_at":"2024-11-07T18:13:59.299Z","updated_at":"2025-08-21T09:12:17.175Z","avatar_url":"https://github.com/SaraKhild.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WebFlux WebSocket Chat: The Chat Application as a Message Hub\n\n\u003cbr\u003e\n\n## Overview\nThis project is a \u003cstrong\u003esophisticated chat application\u003c/strong\u003e built using \u003cstrong\u003eSpring WebFlux\u003c/strong\u003e and \u003cstrong\u003eWebSocket.\u003c/strong\u003e \n\u003cmark\u003e\u003cstrong\u003eIt leverages RTopicReactive for real-time message broadcasting\u003c/strong\u003e\u003c/mark\u003e and \u003cmark\u003e\u003cstrong\u003eRListReactive for persisting chat history.\u003c/mark\u003e\u003c/strong\u003e\nThe application ensures efficient,non-blocking communication, making it scalable and responsive.\nBy combining \u003cstrong\u003eReactive Programming\u003c/strong\u003e with \u003cstrong\u003eWebSocket\u003c/strong\u003e, it offers an optimized chat experience, suitable for \u003cstrong\u003ehigh-concurrency environments.\u003c/strong\u003e\nThis setup ensures that \u003cmark\u003eall messages are broadcasted in real-time to all connected clients while maintaining a complete history of conversations.\u003c/mark\u003e\n  \n## Usages\n-  WebFlux WebSocket\n- Redisson \"Redis\"\n\n## Architecture of the Project\n\n ### 1-src folder\n   - Configration\n   - Service\n     \n ### 2-resources folder\n   #### 2.1 static\n   - chat.html\n   \n### 2-Maven pom.xml\n\u003cbr\u003e \n    \n```\n\t\u003cdependencies\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.redisson\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003eredisson-spring-boot-starter\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e3.16.6\u003c/version\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-webflux\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.projectreactor\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003ereactor-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\u003c/dependencies\u003e\n ```\n\n\u003cbr\u003e\n\n###### Output :star_struck:\n\n\u003cimg width=\"1396\" alt=\"chat-1\" src=\"https://github.com/user-attachments/assets/10ae0b3f-59f5-4d49-80a7-8fa2949ddce1\"\u003e\n\n\u003cimg width=\"1159\" alt=\"chat-2\" src=\"https://github.com/user-attachments/assets/11372d2f-5056-4b11-9565-5c9be1007411\"\u003e\n\n\u003cimg width=\"1270\" alt=\"chat-3\" src=\"https://github.com/user-attachments/assets/1d1ec4dd-2513-4295-9d6e-d1f129641441\"\u003e\n\n---\n\n\n### Good Luck \u003cimg src=\"https://media.giphy.com/media/hvRJCLFzcasrR4ia7z/giphy.gif\" width=\"30px\"\u003e \n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarakhild%2Fchat-hub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsarakhild%2Fchat-hub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarakhild%2Fchat-hub/lists"}