{"id":25239313,"url":"https://github.com/kevveth/pokedex","last_synced_at":"2026-05-09T15:09:24.733Z","repository":{"id":268632921,"uuid":"904988019","full_name":"kevveth/pokedex","owner":"kevveth","description":"This project is a React application that fetches and displays posts from the PokeAPI. It features search functionality, detailed post views, and a responsive design. Built using React, Redux, and other modern web technologies.","archived":false,"fork":false,"pushed_at":"2025-01-05T06:48:06.000Z","size":1061,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-11T18:32:58.719Z","etag":null,"topics":["dexiejs","frontend","javascript","react","react-query","react-router","redux-toolkit"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"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/kevveth.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":"2024-12-17T23:53:32.000Z","updated_at":"2025-01-06T23:03:47.000Z","dependencies_parsed_at":"2025-02-11T18:43:52.151Z","dependency_job_id":null,"html_url":"https://github.com/kevveth/pokedex","commit_stats":null,"previous_names":["kevveth/reddit-app","kevveth/pokedex"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevveth%2Fpokedex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevveth%2Fpokedex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevveth%2Fpokedex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevveth%2Fpokedex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kevveth","download_url":"https://codeload.github.com/kevveth/pokedex/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393538,"owners_count":20931809,"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":["dexiejs","frontend","javascript","react","react-query","react-router","redux-toolkit"],"created_at":"2025-02-11T18:27:23.493Z","updated_at":"2026-05-09T15:09:19.674Z","avatar_url":"https://github.com/kevveth.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pokedex App\n\nA simple Pokedex application built with React, React Query, Redux Toolkit, React Router, and Dexie.js for persistent data.\n\n## Screenshots\n\n![Sreenshot of the home page](images/home.png)\n\n## Features\n\n* **Browse Pokemon:** View a paginated list of Pokemon, fetched from the PokeAPI.\n* **Search Pokemon:** Filter the Pokemon list by name (case-insensitive).\n* **Pokemon Details:** View detailed information about each Pokemon.\n* **Favorites:** Add and remove Pokemon from your favorites list, persisted locally using Dexie.js.\n* **Navigation:** Seamless navigation between Home, Favorites, and Pokemon Details pages.\n* **Loading and Error Handling:** Clear visual feedback during data loading and error states.\n* **Responsive Design:** Works well on different screen sizes.\n\n## Technologies Used\n\n* **React:** A JavaScript library for building user interfaces.\n* **React Query:** A powerful data-fetching and state management library for React, used to handle asynchronous data fetching, caching, and background updates from the PokeAPI.\n* **Redux Toolkit:** A set of tools that simplify Redux development, used for managing application state related to UI interactions and user preferences (like favorites).\n* **React Router:** A standard library for routing in React applications.\n* **React Icons:** Easily include popular icons in your React projects.\n* **Dexie.js:** A minimalist wrapper for IndexedDB, used for persistent storage of user's favorite Pokemon.\n\n## State Management and Data Persistence\n\n* **React Query:** Manages asynchronous state related to fetching Pokemon data from the PokeAPI, including caching and background updates.\n* **Redux Toolkit:** Manages synchronous state, such as:\n  * User's favorite Pokemon (acting as an in-memory cache).\n  * Search term used to filter the Pokemon list.\n  * Currently selected Pokemon for details view.\n* **Dexie.js:** Provides persistent storage for the user's favorite Pokemon, ensuring that favorites are saved across page refreshes and browser restarts. The Redux store is initialized with data from Dexie on app load, and updates to favorites are synchronized between Redux and Dexie.\n\nThis combined approach provides optimal performance and a clean separation of concerns.\n\n## Installation\n\n1. Clone the repository:\n\n    ```bash\n    git clone [invalid URL removed]\n    ```\n\n2. Navigate to the project directory:\n\n    ```bash\n    cd your-repo-name\n    ```\n\n3. Install dependencies:\n\n    ```bash\n    npm install\n    # or\n    yarn install\n    # or\n    pnpm install\n    ```\n\n## Usage\n\n1. Start the development server:\n\n    ```bash\n    npm start\n    # or\n    yarn start\n    # or\n    pnpm start\n    ```\n\n2. Open your browser and navigate to `http://localhost:5173`.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevveth%2Fpokedex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevveth%2Fpokedex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevveth%2Fpokedex/lists"}