{"id":17650377,"url":"https://github.com/lowsky/react-suspense-meetup-demo","last_synced_at":"2026-03-08T21:34:39.021Z","repository":{"id":65552393,"uuid":"577187262","full_name":"lowsky/react-suspense-meetup-demo","owner":"lowsky","description":"A Demo showing an overview of the build states of GitHub branches page using lazy loading.","archived":false,"fork":false,"pushed_at":"2025-05-07T03:43:13.000Z","size":18414,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-07T07:06:53.325Z","etag":null,"topics":["github","react","react-suspense"],"latest_commit_sha":null,"homepage":"https://react-suspense-meetup-demo.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lowsky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-12-12T07:04:43.000Z","updated_at":"2025-05-06T20:45:49.000Z","dependencies_parsed_at":"2024-04-22T23:26:31.943Z","dependency_job_id":"3a4cbf9e-2f97-4ea0-b1b4-a9eb06ea8f04","html_url":"https://github.com/lowsky/react-suspense-meetup-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lowsky%2Freact-suspense-meetup-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lowsky%2Freact-suspense-meetup-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lowsky%2Freact-suspense-meetup-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lowsky%2Freact-suspense-meetup-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lowsky","download_url":"https://codeload.github.com/lowsky/react-suspense-meetup-demo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252831256,"owners_count":21810783,"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","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":["github","react","react-suspense"],"created_at":"2024-10-23T11:37:56.753Z","updated_at":"2026-03-08T21:34:33.978Z","avatar_url":"https://github.com/lowsky.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## React-Suspend with data-loading\n\nThere are these different modes how the page data are loaded:\n\n-   [Classic way without Suspense](http://localhost:3000/restful): **All or nothing**: Fetching all data in place within a `useEffect()` + props-drilling\n-   [One global Suspense](http://localhost:3000/wait-for-all):\n    **Waiting until all**: **Waiting until** all data got fetched\n-   [\"Waterfall\"](http://localhost:3000/waterfall): **Incremental Loading**: More than 1 Suspense in the tree hierarchy:\n-   [Side-by-Side](http://localhost:3000/side-by-side): Show both: incremental loading and wait-for-all\n\n![screenshot.png](public/screenshot-side-to-side.png)\n\nOn the right side, there is a Cache-loading inspector [\"hitchcock\"](https://github.com/pomber/hitchcock#readme) by [@pombo](https://github.com/pomber), based on the work of Jared Palmer\n\n## Purpose: React Suspense - demo\n\nList the `(feature) branches` of a GitHub repository with its `last commit's`\n\n-   build status-es\n-   linked PR\n-   commit message and author\n-   linked deployment\n\n## Getting started\n\nAfter invoking this in a shell\n\n    git clone https://github.com/lowsky/react-suspense-meetup-demo\n    cd react-suspense-meetup-demo\n\n    yarn\n\nthen set up the `github-token` (see below: [Setup GitHub Token](#setupgithubtoken) )\n\nbefore starting local dev mode via:\n\n    yarn dev\n\nThis runs **Next.js** in **dev-mode**\n\nNow, you can open the home [http://localhost:3000](http://localhost:3000) in your browser.\n\nHave fun!\n\n### setupGithubToken\n\nYou **need to create your own github-token** (see https://github.com/settings/tokens/) and\nstore it locally in `.env` file\n\n    # create an .env file with this content ...\n    GITHUB_TOKEN=XXX\n\n    # ... and replace the XXX with your API key\n    # typically something like\n    # GITHUB_TOKEN=ghp_....\n\n## Stack\n\n-   [Next.js](https://nextjs.org/)\n-   [ChakraUI](https://chakra-ui.com/) ~~[Bulma](https://bulma.io/)~~\n-   React\n-   React.Cache\n-   React.Suspend\n-   [Typescript](https://www.typescriptlang.org/)\n\n## License\n\nLicensed under the Apache License 2.0, Copyright ©️ 2023 Robert Hostlowsky. See [LICENSE](LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flowsky%2Freact-suspense-meetup-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flowsky%2Freact-suspense-meetup-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flowsky%2Freact-suspense-meetup-demo/lists"}