{"id":19034130,"url":"https://github.com/aurasphere/react-pokedom","last_synced_at":"2026-02-21T19:33:36.542Z","repository":{"id":63078596,"uuid":"557805253","full_name":"aurasphere/react-pokedom","owner":"aurasphere","description":"Gotta catch 'em all!","archived":false,"fork":false,"pushed_at":"2023-02-18T21:26:39.000Z","size":96,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-23T00:19:21.067Z","etag":null,"topics":["pokemon","react"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aurasphere.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}},"created_at":"2022-10-26T10:40:04.000Z","updated_at":"2024-09-16T10:23:06.000Z","dependencies_parsed_at":"2024-11-08T21:43:42.022Z","dependency_job_id":null,"html_url":"https://github.com/aurasphere/react-pokedom","commit_stats":{"total_commits":21,"total_committers":1,"mean_commits":21.0,"dds":0.0,"last_synced_commit":"da6f38506b47a19374f376bf499d38b3f7c8ce66"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aurasphere/react-pokedom","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aurasphere%2Freact-pokedom","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aurasphere%2Freact-pokedom/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aurasphere%2Freact-pokedom/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aurasphere%2Freact-pokedom/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aurasphere","download_url":"https://codeload.github.com/aurasphere/react-pokedom/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aurasphere%2Freact-pokedom/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29691045,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T18:18:25.093Z","status":"ssl_error","status_checked_at":"2026-02-21T18:18:22.435Z","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":["pokemon","react"],"created_at":"2024-11-08T21:43:35.739Z","updated_at":"2026-02-21T19:33:36.528Z","avatar_url":"https://github.com/aurasphere.png","language":"TypeScript","funding_links":["https://www.paypal.com/donate/?cmd=_donations\u0026business=8UK2BZP2K8NSS"],"categories":[],"sub_categories":[],"readme":"[![Github Workflow](https://img.shields.io/github/actions/workflow/status/aurasphere/react-pokedom/node.js.yml?branch=main)](https://github.com/aurasphere/react-pokedom/actions)\n[![Maintainability](https://api.codeclimate.com/v1/badges/819c60dd2987fa97ba95/maintainability)](https://codeclimate.com/github/aurasphere/react-pokedom/maintainability)\n[![Npm](https://img.shields.io/npm/v/@aurasphere/react-pokedom)](https://www.npmjs.com/package/@aurasphere/react-pokedom)\n[![Donate](https://img.shields.io/badge/Donate-PayPal-orange.svg)](https://www.paypal.com/donate/?cmd=_donations\u0026business=8UK2BZP2K8NSS)\n[![Telegram](https://img.shields.io/badge/-telegram-a?color=white\u0026logo=telegram)](https://t.me/+Wy1DPTLyFGg0OWE0)\n\n\n\n\u003cimg align=\"left\" src=\"/assets/react-pokedom-logo.png\" alt=\"react-pokedom-logo\" height=\"100\" /\u003e\n\n# React Pokedom\n\u003csup\u003eGotta catch 'em all!\u003c/sup\u003e\n\n\nA React library for catching Pokémon alongside your DOM events. There are more than 800 Pokémon hiding in your DOM. Can you catch them all?\n\n## Installation\n\n    npm install @aurasphere/react-pokedom\n    \nor\n\n    yarn add @aurasphere/react-pokedom\n\n## Quickstart\n\n\u003csub\u003e\u003csup\u003e**DISCLAMER**: catching Pokémons of type _bug_ may infect your application with the Pokérus virus which will turn your computer into a Pokédollar crypto miner. We decline any responsibility.\u003c/sub\u003e\u003c/sup\u003e\n\nTo catch a Pokémon you use the `usePokeball` hook. This hook returns a function that you can pass as a DOM event callback:\n\n    import { usePokeball } from '@aurasphere/react-pokedom';\n    // ...\n    const pokeball = usePokeball();\n    //...\n    \u003cbutton onClick={pokeball}\u003eTry to catch a Pokemon!\u003c/button\u003e\n\nYou can also pass a function as an argument to the hook. If you do so, your function will be invoked with the DOM event (with an additional `pokemon` field if you caught one):\n\n    const myCallback = event =\u003e {\n        if (event.pokemon) {\n            console.log(\"Pokemon caught!\");\n        }\n    }\n    const pokeball = usePokeball(myCallback);\n\nTo see all your Pokémons you can use the `usePokedex` hook which returns an array:\n\ntakes an optional callback function as an argument which will be invoked with the DOM event. The event will contain a `pokemon` field if one has been caught.\n\nTo view the Pokémon you caught so far, you can use the `usePokedex` hook which returns an array. However, this hook only works in the Pokémon world, so you have to wrap your application in the `\u003cKantoRegion\u003e` tag:\n\n    // index.js\n    import { KantoRegion } from '@aurasphere/react-pokedom';\n    // ...\n    \u003cKantoRegion\u003e\n        \u003cMyComponent /\u003e\n    \u003c/KantoRegion\u003e\n\n    // my-component.js\n    import { usePokedex } from '@aurasphere/react-pokedom';\n    // ...\n    const pokedex = usePokedex();\n\n## API\n\n### Hooks\n\n    function usePokedex(): Pokedex;\n    function usePokeball(callback?: (e: PokedomEvent) =\u003e void): (event: Event) =\u003e void;\n\n### Types\n\nSee https://github.com/aurasphere/react-pokedom/blob/main/src/types.ts.\n\n## Project status\nThis project is considered completed and won't be developed further.\n\n## Contacts\nYou can contact me using my account e-mail or by joining the Telegram group (link on the badge on top of this document). I'll try to reply ASAP.\n\n## Acknowledgments\nThanks to [Federica Lisci](https://www.linkedin.com/in/federica-lisci-377220162/) for the logo!\n\n## License\nThe project is released under the MIT license, which lets you reuse the code for any purpose you want (even commercial) with the only requirement being copying this project license on your project.\n\n\u003csub\u003eCopyright (c) 2022 Donato Rimenti\u003c/sub\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faurasphere%2Freact-pokedom","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faurasphere%2Freact-pokedom","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faurasphere%2Freact-pokedom/lists"}