{"id":26585450,"url":"https://github.com/juannovas/live-chat","last_synced_at":"2026-04-13T22:03:40.834Z","repository":{"id":246889032,"uuid":"822266115","full_name":"JuanNovas/live-chat","owner":"JuanNovas","description":"A real time chat built with Fastapi based on microservices","archived":false,"fork":false,"pushed_at":"2024-07-08T12:52:49.000Z","size":112,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-23T10:42:35.771Z","etag":null,"topics":["fastapi","microservices","mongodb","python"],"latest_commit_sha":null,"homepage":"","language":"Python","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/JuanNovas.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-06-30T18:48:30.000Z","updated_at":"2024-11-24T16:20:39.000Z","dependencies_parsed_at":"2025-03-23T10:40:04.497Z","dependency_job_id":"7de47773-af61-4dea-8456-fb2ec87bc67d","html_url":"https://github.com/JuanNovas/live-chat","commit_stats":null,"previous_names":["juannovas/live-chat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/JuanNovas/live-chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuanNovas%2Flive-chat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuanNovas%2Flive-chat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuanNovas%2Flive-chat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuanNovas%2Flive-chat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JuanNovas","download_url":"https://codeload.github.com/JuanNovas/live-chat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuanNovas%2Flive-chat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31772643,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T20:17:16.280Z","status":"ssl_error","status_checked_at":"2026-04-13T20:17:08.216Z","response_time":93,"last_error":"SSL_read: 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":["fastapi","microservices","mongodb","python"],"created_at":"2025-03-23T10:39:53.853Z","updated_at":"2026-04-13T22:03:40.819Z","avatar_url":"https://github.com/JuanNovas.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 💬 Live Chat\n\nWelcome to the **Live Chat** repository! This project showcases a chat application backend built using a microservices architecture built with FastAPI.\n\n![Microservices Architecture](graph.jpeg)\n\n## 📋 Table of Contents\n\n- [Introduction](#introduction)\n- [Features](#features)\n- [Architecture](#architecture)\n- [Services](#services)\n- [Technologies](#technologies)\n\n## 🌟 Introduction\n\nLive chat allows users to send and receive messages in real-time. It is built using a microservices architecture, JWT verification and Websockets. The purpose of the project is to demonstrate my ability to build API's and manage non-relational databases.\n\n## 🚀 Features\n\n- 🔐 User authentication and authorization\n- 📨 Real-time messaging\n- 📇 Contacts management\n- 🔗 Connection management\n- 🗄️MongoDB for data storage\n\n## 🏛️ Architecture\n\nThe application is composed of several microservices, each responsible for a specific functionality. The services communicate with each other using HTTP and WebSockets. Below is an overview of the architecture:\n\n- **🔑 Login Service**: Handles user login and token generation.\n- **✅ Verification Service**: Manages token verification processes.\n- **📇 Contacts Service**: Manages user contacts.\n- **💬 Messages Service**: Manages the sending and downloading of messages.\n- **🔗 Connection Service**: Manages WebSocket communications to enable real time chat conversations.\n- **🗄️ MongoDB Database**: Stores all persistent data for the application.\n\n## 🛠️ Technologies\n\n- **FastAPI**: Back-end framework for building APIs.\n- **MongoDB**: NoSQL database for storing application data.\n- **Docker**: Containerization of services.\n- **JWT**: JSON Web Tokens for user authentication.\n- **WebSockets**: Real-time communication protocol.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuannovas%2Flive-chat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuannovas%2Flive-chat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuannovas%2Flive-chat/lists"}