{"id":27522573,"url":"https://github.com/bracciata/cornhacks2020","last_synced_at":"2026-05-09T02:37:26.534Z","repository":{"id":94999470,"uuid":"234594896","full_name":"Bracciata/CornHacks2020","owner":"Bracciata","description":"The winner of the Green Track at Corn Hacks 2020. Scrapshot is an Android App built with Kotlin, Tensorflow, and Google APIs. It uses image recognition in order to determine if an item is recyclable and allows you to recycle it for points. It includes a map of the recycling center, point redemption, leader boards, and more!","archived":false,"fork":false,"pushed_at":"2020-01-30T18:58:20.000Z","size":50616,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-22T14:45:52.243Z","etag":null,"topics":["android","googlemaps-api","kotlin","kotlin-android","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/Bracciata.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":"2020-01-17T16:57:48.000Z","updated_at":"2022-08-02T15:34:43.000Z","dependencies_parsed_at":"2023-06-11T13:00:22.087Z","dependency_job_id":null,"html_url":"https://github.com/Bracciata/CornHacks2020","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Bracciata/CornHacks2020","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bracciata%2FCornHacks2020","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bracciata%2FCornHacks2020/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bracciata%2FCornHacks2020/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bracciata%2FCornHacks2020/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bracciata","download_url":"https://codeload.github.com/Bracciata/CornHacks2020/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bracciata%2FCornHacks2020/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32805211,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["android","googlemaps-api","kotlin","kotlin-android","tensorflow"],"created_at":"2025-04-18T10:25:19.395Z","updated_at":"2026-05-09T02:37:26.519Z","avatar_url":"https://github.com/Bracciata.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ScrapShot\n\n### Winner of the Green Track at Corn Hacks 2020\n\n##### Created by Tommy Braccia, Danny Tran, Erik Skoog, and Emma Hubka\n\n## Inspiration\n\u003cp\u003e As the world continues to advance technologically, socially, and economically, we become more and more dependent on items such as plastics, chemicals, and other pollutants. Most of these items end up in landfills, wild habitats, or even worse, back onto city streets. However, this does not need to be the case. We were inspired to make ScrapShot because we wanted to spread awareness by encouraging recycling. Often times we find ourselves asking if we can recycle certain items. By creating an informative application, we can aid people to reduce environmental, energy consumption, and waste. \u003c/p\u003e\n\n## What it does\n\u003cp\u003e Our app determines whether or not an item is recyclable based on live image recognition. The user earns points for each item scanned. Once the user collects enough points, they can enter a raffle of their choosing. They can also add friends and compete to earn the most points. The app also has a map of recycling plants in the area to help the user locate where they can recycle their items. \u003c/p\u003e\n\n## How we built it\n\u003cp\u003eWe used Kotlin, XML, Google Maps API, TensorFlowLite API, and Android Studio to develop the app.\u003c/p\u003e\n\n## Challenges we ran into\n* While planning this project, we knew we wanted to use GitHub, a version control system we had all used before, to efficiently separate and manage our codebase. To further encourage the separation of tasks, we decided to utilize branches. We had never used branches before, so we ran into plenty of challenges such as merge conflict and losing commits in other branches.\n* Another challenge we had to overcome was to maintain consistent communication throughout an agile environment with a short time frame.\n\n## Accomplishments that we're proud of\n* As we implemented our recycling center locator, we learned a lot about geolocation concepts such as GeoJSON files and georeferencing APIs (such as Google Maps and Mapbox).\n* With limited experience working with XML, we were able to add upon our knowledge by discovering different shortcuts and optimal ways to refactor our codebase. Thus, in turn, it made our codebase more concise, reduce DRY violations, and improved other software principles such as readability, maintainability, and cohesion. \n*We are proud of circumventing the issue of only being able to store strings or integers to android shared preferences by converting the objects we needed to JSON strings, storing them, and then parsing the JSON later.\n\n## What we learned\n* We learned how to create an Android app from scratch.\n* We learned how to implement different types of APIs.\n* We learned how to implement multiple APIs on the same project and have them work together.\n* We learned XML.\n\n## What's next for ScrapShot\n* Implement a lottery system for determining how many points the user gets for scanning an item to entice the user to scan more items. \n* Add a daily bonus so users get points for interacting with the app daily. \n* Add limitations on how many points the user can earn a day to prevent people from cheating the system. \n\n## App Flow Demonstated by a movie and screenshots\n[Link to a video demonstrating use of ScrapShot](https://github.com/Bracciata/CornHacks2020/blob/master/Demo/Demo%20Video.MOV)\n\nWhen opening the application you see a disclaimer on recycling:\n\n\u003cimg src=\"Demo/IMG_0207.jpg\" width=\"200\"\u003e\n\nAfter that the camera classification model opens and if it recognizes a recyclable item it offers you to recycle it for points: \n\n\u003cimg src=\"Demo/IMG_0208.jpg\" width=\"200\"\u003e\n\nIn order to get points you will need to have a profile like the one shown: \n\n\u003cimg src=\"Demo/IMG_0209.jpg\" width=\"200\"\u003e\n\nDo not worry if you do not have an account because you will be able to register: \n\n\u003cimg src=\"Demo/IMG_0214.jpg\" width=\"200\"\u003e\n\n\nWhat is the point of getting points if you can not do anything with them? We have many rewards for users to redeem in order to keep them recycling:\n\n\u003cimg src=\"Demo/IMG_0210.jpg\" width=\"200\"\u003e\n\n\nMaybe you don't care about the trophy but want to win because of pride. Use the leaderboard to prove you are better at recycling than your friends:\n\n\u003cimg src=\"Demo/IMG_0211.jpg\" width=\"200\"\u003e\n\n\nThere is also a map of recycling plants nearby you: \n\n\u003cimg src=\"Demo/IMG_0213.jpg\" width=\"200\"\u003e\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbracciata%2Fcornhacks2020","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbracciata%2Fcornhacks2020","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbracciata%2Fcornhacks2020/lists"}