{"id":26270969,"url":"https://github.com/liamrdawson/image-search","last_synced_at":"2026-04-09T01:31:39.880Z","repository":{"id":35745761,"uuid":"208246225","full_name":"liamrdawson/image-search","owner":"liamrdawson","description":"A React application that integrates with the Google Vision API and will enable users to search for images listed in an array, based on specific search terms. The user will be able to select an image from the returned results and blur faces detected.","archived":false,"fork":false,"pushed_at":"2023-05-06T18:46:21.000Z","size":1348,"stargazers_count":1,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-08T19:34:56.348Z","etag":null,"topics":["google-vision-api","javascript","react","redux"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/liamrdawson.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-09-13T10:53:24.000Z","updated_at":"2023-03-04T05:01:44.000Z","dependencies_parsed_at":"2025-10-08T19:33:00.891Z","dependency_job_id":"e8cda4ac-d7e6-4290-ad6a-7040dc1c8c57","html_url":"https://github.com/liamrdawson/image-search","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/liamrdawson/image-search","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamrdawson%2Fimage-search","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamrdawson%2Fimage-search/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamrdawson%2Fimage-search/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamrdawson%2Fimage-search/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liamrdawson","download_url":"https://codeload.github.com/liamrdawson/image-search/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liamrdawson%2Fimage-search/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31581864,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","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":["google-vision-api","javascript","react","redux"],"created_at":"2025-03-14T06:17:53.585Z","updated_at":"2026-04-09T01:31:39.857Z","avatar_url":"https://github.com/liamrdawson.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).\n\n# Installation\n\nAfter cloning this project, you need to import dependencies using [NPM](https://www.npmjs.com/).\n\n```sh\n$ npm i\n```\n\nCreate a file for environment variables named `.env.local` and set its contents to\n\n```\nREACT_APP_GOOGLE_VISION_API_KEY=\u003cyour_api_key\u003e\n```\n\nStart the app with the following command. Your browser should automatically open a new tab on [http://localhost:3000](http://localhost:3000).\n\n```sh\n$ npm start\n```\n\n## Notes\n\n#### I've managed to add image data to state and render these to the gallery, completing the first requirement: \n- As a user I can visualise images retrieved via public URL’s in a gallery page.\n\n#### Next I would need to make adjustments to achieve the second requirement:\n-  As a user I can filter images based on their content (i.e. people, plants, chairs, windows etc).\n##### To do this, I would \n- use the form to update local searchText state and pass this back up to App.\n - Then I would pass this data down as props to ImageList and filter the 'images' state for objects where indexOf searchText is greater than -1. \n    - This should render only specific images to the page as, in an attempt to not throw too wide a net, I've restricted the number of labels retrieved from the Vision API to 10.\n\n#### Finally would be my third requirement:\n- As a user I can select one of the images and blur parts of this image (i.e a persons face) and\n##### Considerations for this\n- The google vision API can respond with face detection data, containing coordinates of face 'landmarks' on the image. I would use these coordinates along with an external library to target and blur/pixelate that specific area. I would need to investigate options regarding this to make sure that a well maintained library is used for this task\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliamrdawson%2Fimage-search","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliamrdawson%2Fimage-search","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliamrdawson%2Fimage-search/lists"}