{"id":21038223,"url":"https://github.com/jglchen/hackernews-nextjs-graphql-sse","last_synced_at":"2026-04-12T03:03:39.767Z","repository":{"id":132306989,"uuid":"588034743","full_name":"jglchen/hackernews-nextjs-graphql-sse","owner":"jglchen","description":"A Hackernews clone site built with next.js implementing GraphQL APIs, for which Apollo Client is adopted in the frontend and GraphQL Yoga in the backend server. Full functionality of the GraphQL server, including queries, mutations, and subscriptions, is implemented in this app.","archived":false,"fork":false,"pushed_at":"2023-03-23T09:20:33.000Z","size":509,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-13T20:44:37.075Z","etag":null,"topics":["apollo-client","docker","graphql","nextjs","reactjs","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/jglchen.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":"2023-01-12T07:00:45.000Z","updated_at":"2023-02-21T05:50:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"4c58e447-6349-4507-bc83-53041e4a5310","html_url":"https://github.com/jglchen/hackernews-nextjs-graphql-sse","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jglchen/hackernews-nextjs-graphql-sse","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jglchen%2Fhackernews-nextjs-graphql-sse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jglchen%2Fhackernews-nextjs-graphql-sse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jglchen%2Fhackernews-nextjs-graphql-sse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jglchen%2Fhackernews-nextjs-graphql-sse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jglchen","download_url":"https://codeload.github.com/jglchen/hackernews-nextjs-graphql-sse/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jglchen%2Fhackernews-nextjs-graphql-sse/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31702582,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T21:17:31.016Z","status":"online","status_checked_at":"2026-04-12T02:00:06.763Z","response_time":58,"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":["apollo-client","docker","graphql","nextjs","reactjs","typescript"],"created_at":"2024-11-19T13:30:05.826Z","updated_at":"2026-04-12T03:03:39.761Z","avatar_url":"https://github.com/jglchen.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Hackernews Clone Site with GraphQL (includes GraphQL subscriptions)\n\nThis is a [Hackernews](https://news.ycombinator.com/) clone site built with next.js implementing GraphQL APIs, for which Apollo Client is adopted in the frontend and GraphQL Yoga in the backend server.\n           \nSubscriptions are a GraphQL feature that allows a server to send data to its clients when a specific event happens. Subscriptions are usually implemented with [WebSockets](https://en.wikipedia.org/wiki/WebSocket) or [Server-Sent Events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events). GraphQL Yoga uses [Server-Sent Events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events) for the subscription protocol.\n\nThe real-time communication of subscriptions however was found not to function well once the package is deployed to Vercel, which is a serverless platform. We will not deploy this package to Vercel, however, a dockerized package of this app is prepared.\n\n### Docker: docker run -p 3000:3000 jglchen/hackernews-nextjs-graphql-sse\n### [GitHub](https://github.com/jglchen/hackernews-nextjs-graphql-sse)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjglchen%2Fhackernews-nextjs-graphql-sse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjglchen%2Fhackernews-nextjs-graphql-sse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjglchen%2Fhackernews-nextjs-graphql-sse/lists"}