{"id":22783237,"url":"https://github.com/gregolive/memory-game","last_synced_at":"2026-05-05T14:33:46.426Z","repository":{"id":183622991,"uuid":"474951646","full_name":"gregolive/memory-game","owner":"gregolive","description":"楽しく脳トレしよう","archived":false,"fork":false,"pushed_at":"2022-03-29T15:24:51.000Z","size":1498,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T15:14:00.860Z","etag":null,"topics":["javascript","react"],"latest_commit_sha":null,"homepage":"https://gregolive.github.io/memory-game","language":"JavaScript","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/gregolive.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}},"created_at":"2022-03-28T10:26:16.000Z","updated_at":"2022-03-29T15:00:34.000Z","dependencies_parsed_at":"2023-07-25T19:49:58.205Z","dependency_job_id":null,"html_url":"https://github.com/gregolive/memory-game","commit_stats":null,"previous_names":["gregolive/memory-game"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gregolive/memory-game","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregolive%2Fmemory-game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregolive%2Fmemory-game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregolive%2Fmemory-game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregolive%2Fmemory-game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gregolive","download_url":"https://codeload.github.com/gregolive/memory-game/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregolive%2Fmemory-game/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32653595,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["javascript","react"],"created_at":"2024-12-11T22:07:23.720Z","updated_at":"2026-05-05T14:33:46.406Z","avatar_url":"https://github.com/gregolive.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Memory Game\n\nTry your best not to click the same card twice in this brain training memory game.\n\n[Live demo](https://gregolive.github.io/memory-game/) 👈\n\n## Functionality\n\n- On startup players are presented with a popup modal with the game instrucations and begin playing by clicking the start button\n- The gameboard contains 12 cards out of a pool of 22 total cards (containg a photo and the name of a character from the show ちびまる子ちゃん)\n- Players are awarded a point for every consectutive card clicked, but their score is reset if they click a card twice\n- A player's best score is saved in their browser using Javascript's \u003ccode\u003elocalStorage\u003c/code\u003e\n- The app features functional components with hooks used for saving component state and perform side effects (fetching/persisting best scores and alerts)\n\n## Reflection\n\nUsing React functional components rather than class components in this project helped me to understand why many developers have come to prefer functional components after the introduction of hooks. In my opinion, it is easier to write succient components with the use of functions and using the \u003ccode\u003euseEffect()\u003c/code\u003e hook is more intuitive than the various lifecycle methods from class components.\n\n## Screenshot\n\n\u003cimg src='./screenshot.jpg' alt='CV builder screenshot'\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgregolive%2Fmemory-game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgregolive%2Fmemory-game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgregolive%2Fmemory-game/lists"}