{"id":23757511,"url":"https://github.com/olha-dev-fullstack/graphql-chat-app","last_synced_at":"2025-12-30T21:16:28.953Z","repository":{"id":269437877,"uuid":"907392270","full_name":"olha-dev-fullstack/graphql-chat-app","owner":"olha-dev-fullstack","description":"FullStack real-time chat application","archived":false,"fork":false,"pushed_at":"2024-12-25T12:03:20.000Z","size":3586,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-01T12:32:17.515Z","etag":null,"topics":["graphql","nestjs","postgresql","prisma","react","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/olha-dev-fullstack.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,"zenodo":null}},"created_at":"2024-12-23T13:29:32.000Z","updated_at":"2024-12-25T12:05:42.000Z","dependencies_parsed_at":"2025-05-25T03:07:45.145Z","dependency_job_id":"59bc60de-841a-4661-82cb-db92bdafc808","html_url":"https://github.com/olha-dev-fullstack/graphql-chat-app","commit_stats":null,"previous_names":["olha-dev-fullstack/graphql-chat-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/olha-dev-fullstack/graphql-chat-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olha-dev-fullstack%2Fgraphql-chat-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olha-dev-fullstack%2Fgraphql-chat-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olha-dev-fullstack%2Fgraphql-chat-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olha-dev-fullstack%2Fgraphql-chat-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/olha-dev-fullstack","download_url":"https://codeload.github.com/olha-dev-fullstack/graphql-chat-app/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olha-dev-fullstack%2Fgraphql-chat-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266897218,"owners_count":24002642,"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-07-24T02:00:09.469Z","response_time":99,"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":["graphql","nestjs","postgresql","prisma","react","typescript"],"created_at":"2024-12-31T19:48:21.698Z","updated_at":"2025-10-06T23:42:54.579Z","avatar_url":"https://github.com/olha-dev-fullstack.png","language":"TypeScript","readme":"# Real time GraphQL chat application\n\nUsed NestJS, Prisma, GraphQL, Redis, Postgres, ReactJS, Apollo Client, Zustand, and the UI library Mantine to create a FullStack TypeScript Real-time Chat app.\nUsing Docker set up for local development.\n\n### Here are the main features chat app:\n\n**Authentication Flow**: This allows users to register, log in, and log out. Authentication will be managed by using JWT Tokens, stored as HttpOnly cookies, which is necessary for accessing protected mutations and queries.\n\n**Profile Management**: Users can update their name and profile avatar.\n\n**Chatrooms**: Users can create chatrooms and add members.\n\n**Real-time Features**: Implemented real-time features using GraphQL subscriptions built on top of WebSockets. This enables users to receive messages instantly, see typing indicators, and more.\n\n**Online User Tracking with Redis**: Using Redis to store live users in a chatroom. As users join or leaves, the list gets updated in real-time on the backend. Subscribed clients will instantly see these changes.\n\n## How to run project locally\n\n- Clone the repository:\n\n```bash\ngit clone https://github.com/olha-dev-fullstack/graphql-chat-app.git\ncd graphql-chat-app\n```\n\n- To start backend:\n\n```bash\ncd backend\ndocker compose up -d ## this starts local database\nnpm install\nnpm run start:dev\n```\n\n- To start frontend:\n\n```bash\ncd frontend\nnpm install\nnpm run dev\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folha-dev-fullstack%2Fgraphql-chat-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Folha-dev-fullstack%2Fgraphql-chat-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folha-dev-fullstack%2Fgraphql-chat-app/lists"}