{"id":28271230,"url":"https://github.com/sasmithak/rest-countries","last_synced_at":"2025-06-17T05:30:28.431Z","repository":{"id":291301659,"uuid":"968137842","full_name":"sasmithaK/REST-countries","owner":"sasmithaK","description":"Explore countries worldwide with a React app using the REST Countries API","archived":false,"fork":false,"pushed_at":"2025-05-23T16:43:10.000Z","size":13046,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-27T07:48:19.649Z","etag":null,"topics":["reactjs","redux-persist","rest-api","restcountries-api","webapplication"],"latest_commit_sha":null,"homepage":"https://www.curiosityvoyage.me","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/sasmithaK.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-17T15:12:21.000Z","updated_at":"2025-05-23T16:44:42.000Z","dependencies_parsed_at":"2025-05-03T18:45:15.933Z","dependency_job_id":null,"html_url":"https://github.com/sasmithaK/REST-countries","commit_stats":null,"previous_names":["sasmithak/rest-countries"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sasmithaK/REST-countries","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sasmithaK%2FREST-countries","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sasmithaK%2FREST-countries/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sasmithaK%2FREST-countries/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sasmithaK%2FREST-countries/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sasmithaK","download_url":"https://codeload.github.com/sasmithaK/REST-countries/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sasmithaK%2FREST-countries/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260298341,"owners_count":22988399,"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":["reactjs","redux-persist","rest-api","restcountries-api","webapplication"],"created_at":"2025-05-20T18:20:20.724Z","updated_at":"2025-06-17T05:30:28.421Z","avatar_url":"https://github.com/sasmithaK.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Curiosity Voyage 🌏 - Explore Countries\n\nTake a tour around the world. This React application lets you browse, search, filter, and view details such as country flag, population, languages used, currencies, capital, bordering countries and many more via the [REST Countries API](https://restcountries.com/).\n\n--- \n\n## 🌐 Demo\n\n\u003e _Live demo:_ https://www.curiosityvoyage.me\n\n---\n\n## 📑 Features\n\n- **Browse** all countries with flags, names, regions, populations, capitals, languages and bordering countries\n- **Search** countries by name\n- **Filter** by region and by language  \n- **Detailed view** for each country's official name, currencies, subregion and timezone\n- **Bookmark and View the most recently visited countries** within a user state\n- **Responsive** UI for mobile and desktop\n---\n\n## 📚 Tech Stack\n\n- **Front‐end**: React, React Router, React Hooks  \n- **Styling**: Bootstrap 5 + custom CSS  \n- **API client**: Fetch wrapper in `src/api/restCountries.js`  \n- **State management**: Redux \n- **Bundler**: Create React App  \n- **Testing**: Jest \u0026 React Testing Library  \n\n---\n\n## 👨‍💻 Getting Started\n\n### Prerequisites\n\n- **Node.js** v14+  \n- **npm** v6+ or **yarn**  \n\n### Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/sasmithaK/REST-countries.git\ncd REST-countries/frontend\n\n# Install dependencies\nnpm install\n# or\nyarn install\n```\n\n### Script\tDescription\n```bash\nnpm run dev\t# Launch development server\nnpm run build\t# Build for production\nnpm run preview\t# Preview production build locally\n```\n\n## 📁 Project Structure\n```bash\nfrontend/\n ├── backend/ #user state management\n ├── public/\n ├── src/\n │ ├── api/ # API client\n │ ├── assests/ # Media files\n │ ├── components/ # UI components\n │ ├── hooks/ # Custom React hooks\n │ ├── styles/ # CSS styles\n │ ├── pages/ # Web pages\n │ ├── store/ # Redux state management\n │ ├── tests/ # Unit \u0026 integration tests\n │ ├── App.jsx # App entry component\n │ └── main.jsx # Main entry file\n ├── index.html\n └── package.json\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsasmithak%2Frest-countries","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsasmithak%2Frest-countries","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsasmithak%2Frest-countries/lists"}