{"id":23307290,"url":"https://github.com/simonapiz/adopt-a-pet","last_synced_at":"2026-05-07T18:39:24.217Z","repository":{"id":161478356,"uuid":"635761927","full_name":"SimonaPiz/Adopt-a-Pet","owner":"SimonaPiz","description":"A pet adoption website with React Router v6","archived":false,"fork":false,"pushed_at":"2023-06-05T15:03:31.000Z","size":3637,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-07T00:48:29.050Z","etag":null,"topics":["codecademy-solutions","front-end-development","react-router","reactjs","web-application"],"latest_commit_sha":null,"homepage":"https://adopt-a-pet_simonapiz.surge.sh/","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/SimonaPiz.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":"2023-05-03T12:02:50.000Z","updated_at":"2025-02-22T06:02:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"e824ed16-9f93-4b33-a33b-fa1eed4d5598","html_url":"https://github.com/SimonaPiz/Adopt-a-Pet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SimonaPiz/Adopt-a-Pet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FAdopt-a-Pet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FAdopt-a-Pet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FAdopt-a-Pet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FAdopt-a-Pet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimonaPiz","download_url":"https://codeload.github.com/SimonaPiz/Adopt-a-Pet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FAdopt-a-Pet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32751380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["codecademy-solutions","front-end-development","react-router","reactjs","web-application"],"created_at":"2024-12-20T12:29:52.207Z","updated_at":"2026-05-07T18:39:24.201Z","avatar_url":"https://github.com/SimonaPiz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Adopt a Pet - Web App\n\u003e A React app to practice React Router v6\n\nHere is a working live demo [https://adopt-a-pet_simonapiz.surge.sh/](https://adopt-a-pet_simonapiz.surge.sh/)\n\n\u003cimg width=\"1000px\" src=\"https://user-images.githubusercontent.com/91121660/235917882-0f645705-805f-4dcb-a405-490e2e9e5c0e.png\" alt=\"preview\" title=\"preview\"/\u003e\n\n## Table of contents\n* [About this project](#about-this-project)\n* [Objective](#objective)\n* [Technologies](#technologies)\n* [Setup](#setup)\n\n## About this project\n\nIn this project, I practice using React Router to add client-side routing to a React Application. \nI building a pet adoption website that allows users to view all the animals of a particular species and view the profiles of specific animals.\n\n- Currently, the app renders a `HomePage`component that fetches and displays all adoptable pets.\n    - **src/pages/home/index.js**\n- We have also built a `PetDetailsPage` to display the details for a particular pet.\n    - **src/pages/detail/index.js**\n\n\u003e Use this database for mock data [Urgent Need for Pet Adoption - Find Dogs \u0026 Cats \u0026 More | Petfinder](https://www.petfinder.com/)\n\n## Objective\n\nThe objective is to **add client-side routing to the application** using React Router so that:\n\n- The `HomePage`component responds to the browser’s current URL by displaying only pets of the species the user wishes to view.\n- The `PetDetailsPage`page displays when the browser’s current URL includes a specific pet’s `id`\n    - It displays data for the correct pet based on the `id`in the URL parameters’ values.\n- When the user searches for a pet in the search bar, they are redirected to the `SearchPage`, which uses the query parameter called `name`to filter pets by name.\n- When a user clicks a pet whose details are not available, they are redirected to a `PetNotFoundPage`\n- From the `PetNotFound`page, users can click “**Go Home**” button that will take them to the root path page.\n\n\n## Technologies\n- React 18\n- React Router 6\n- uses Mock Service Worker (MSW) to replicate the functionality of an external API.\n\n## Setup\nTo run this project, install it locally using npm:\n\n```\n$ cd ../[directory]\n$ npm install\n$ npm start\n```\n\n## License\nMIT\n\n## Acknowledgements\nThis project comes from the [Codecademy's Front-End Engineer](https://join.codecademy.com/learn/paths/front-end-engineer-career-path-b/) course.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonapiz%2Fadopt-a-pet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonapiz%2Fadopt-a-pet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonapiz%2Fadopt-a-pet/lists"}