{"id":15848738,"url":"https://github.com/robintail/chat","last_synced_at":"2026-01-15T01:29:48.488Z","repository":{"id":66013998,"uuid":"47635300","full_name":"RobinTail/chat","owner":"RobinTail","description":"Demo chat for zod-sockets","archived":true,"fork":false,"pushed_at":"2025-02-22T13:33:17.000Z","size":2348,"stargazers_count":6,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-01-12T16:29:36.291Z","etag":null,"topics":[],"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/RobinTail.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":"2015-12-08T16:43:25.000Z","updated_at":"2025-03-18T21:11:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"f87d451e-6d2d-4a56-8627-08ececc79863","html_url":"https://github.com/RobinTail/chat","commit_stats":{"total_commits":539,"total_committers":4,"mean_commits":134.75,"dds":"0.41929499072356213","last_synced_commit":"9981147754dce6d54921fdc4282cdc6043bdf53d"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/RobinTail/chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobinTail%2Fchat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobinTail%2Fchat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobinTail%2Fchat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobinTail%2Fchat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RobinTail","download_url":"https://codeload.github.com/RobinTail/chat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobinTail%2Fchat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28441031,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-15T00:55:22.719Z","status":"ssl_error","status_checked_at":"2026-01-15T00:55:20.945Z","response_time":107,"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":[],"created_at":"2024-10-05T18:20:19.763Z","updated_at":"2026-01-15T01:29:48.463Z","avatar_url":"https://github.com/RobinTail.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Demo chat for `zod-sockets`\n\n[![CI](https://github.com/RobinTail/chat/actions/workflows/ci.yml/badge.svg)](https://github.com/RobinTail/chat/actions/workflows/ci.yml)\n\nThe demonstration of [zod-sockets](https://github.com/RobinTail/zod-sockets) and [express-zod-api](https://github.com/RobinTail/express-zod-api)\nworking together as the Socket.IO and Express based chat core using oAuth authentication via social networks.\n\n* Three oAuth providers: Facebook, Twitter, Google (handled by `express-zod-api`);\n* The application is aware of the events I/O types (handled by `zod-sockets`):\n  * See [Generated client](app/client.ts),\n  * See [the generator](core/generate-client.ts)\n* It makes a sound on new incoming messages;\n* It shows who are typing messages now;\n* Converts URLs to anchors and fetch webpage's previews, photos and videos from Embedly API.\n\n![Meme](https://github.com/RobinTail/chat/assets/13189514/754ba9cf-86db-4f83-8800-dd30f4883dbf)\n\n# Screenshots\n\nResponsive design by @DERZELLE (clickable previews for 'lg', 'sm' and 'xs' screens). \n\n[![Chat log](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-lg-preview.png)](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-lg.png)\n[![Chat log](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-sm-preview.png)](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-sm.png)\n[![Chat log](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-xs-preview.png)](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/chatlog-xs.png)\n\nEmbedly API sample fetch. \n\n![Emdebly API](https://raw.githubusercontent.com/RobinTail/chat/master/images/demo/embedly.png)\n\n# Technologies\n\n* NodeJS\n* Typescript\n* `express-zod-api` (Express based)\n* `zod-sockets` (Socket.io based)\n* Passport\n* React\n* Vite\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobintail%2Fchat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobintail%2Fchat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobintail%2Fchat/lists"}