{"id":76094,"name":"treetracker-android","description":"Treetracker is Greenstands open source Android app to track and verify reforestation efforts globally. NEW DEVELOPERS:  Please refer to the README for is issue milestones and topics!  https://github.com/Greenstand/treetracker-android/blob/master/README.md","url":"https://github.com/Greenstand/treetracker-android","last_synced_at":"2025-09-08T16:51:40.784Z","repository":{"id":37276107,"uuid":"103445150","full_name":"Greenstand/treetracker-android","owner":"Greenstand","description":"Treetracker is Greenstands open source Android app to track and verify reforestation efforts globally. NEW DEVELOPERS:  Please refer to the README for is issue milestones and topics!  https://github.com/Greenstand/treetracker-android/blob/master/README.md","archived":false,"fork":false,"pushed_at":"2025-07-11T00:02:57.000Z","size":11353,"stargazers_count":90,"open_issues_count":76,"forks_count":92,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-09-02T11:46:19.378Z","etag":null,"topics":["android"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Greenstand.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":"https://www.paypal.com/donate/?hosted_button_id=3YGXULRCRZZEQ"}},"created_at":"2017-09-13T20:05:32.000Z","updated_at":"2025-07-11T00:03:01.000Z","dependencies_parsed_at":"2023-12-17T04:33:29.969Z","dependency_job_id":"4a1bf44a-8547-4732-b190-4e7b82766972","html_url":"https://github.com/Greenstand/treetracker-android","commit_stats":{"total_commits":1475,"total_committers":49,"mean_commits":"30.102040816326532","dds":0.6657627118644067,"last_synced_commit":"13e8a65b4edf480ea1c081ec338a6509ea93d0a9"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/Greenstand/treetracker-android","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Greenstand","download_url":"https://codeload.github.com/Greenstand/treetracker-android/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274199100,"owners_count":25239766,"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","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"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"}},"owner":{"login":"Greenstand","name":"Greenstand","uuid":"25363578","kind":"organization","description":"Treetracker - Addressing Poverty and Climate Change through transparency in tree growing efforts","email":"info@greenstand.org","website":"https://app.gitbook.com/@greenstand/s/engineering/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/25363578?v=4","repositories_count":54,"last_synced_at":"2023-03-03T22:46:34.987Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Greenstand","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-14T06:13:32.341Z","updated_at":"2023-03-03T22:46:35.150Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Greenstand","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Greenstand/repositories"},"packages":[],"commits":{"id":1254312,"full_name":"Greenstand/treetracker-android","default_branch":"master","committers":[{"name":"Matthew Xi","email":"matthew.fullstackgis@gmail.com","login":null,"count":493},{"name":"Elforama","email":"elforama@gmail.com","login":null,"count":299},{"name":"Taofeek Oduola","email":"oduola.taofeekkola@gmail.com","login":null,"count":107},{"name":"Arun Bakt","email":"arunbakt@gmail.com","login":null,"count":99},{"name":"Treetracker Automation","email":"automation@treetracker.org","login":null,"count":67},{"name":"Peacenux","email":"peacenguyen1@gmail.com","login":null,"count":52},{"name":"Lawrence Muller","email":"lawrencejmuller@gmail.com","login":null,"count":50},{"name":"LaviniaDragunoi","email":"lavinia.dragunoi@yahoo.ro","login":null,"count":47},{"name":"DavidEzraJay","email":"Jay@greenstand.org","login":null,"count":42},{"name":"emmanue","email":"brinkcorp@gmail.com","login":null,"count":35},{"name":"Jhoon Saravia","email":"jhoonsar@gmail.com","login":null,"count":25},{"name":"Ahmed Salem","email":"mozarty11@gmail.com","login":null,"count":21},{"name":"Sebastian Gärtner","email":"sg@esea.co.tz","login":null,"count":19},{"name":"Caleb Langat","email":"95022986+Mzazi25@users.noreply.github.com","login":null,"count":17},{"name":"Rick Frank","email":"rfrank@dominionsw.com","login":null,"count":15},{"name":"Surbhi79","email":"spate212@nyit.edu","login":null,"count":13},{"name":"lastforeverzl","email":"lastforeverzl@gmail.com","login":null,"count":9},{"name":"Darren Gu","email":"darrengyl@gmail.com","login":null,"count":7},{"name":"Gaurav","email":"gauravjain.dtu@gmail.com","login":null,"count":6},{"name":"Matthew Xi","email":"matt@winterroot.net","login":null,"count":6},{"name":"Hening Zheng","email":"heningzheng@henings-mbp.home","login":null,"count":5},{"name":"Anup0101","email":"anup.iyer.0101@gmail.com","login":null,"count":4},{"name":"EsraaAkram","email":"totalappsingplay@gmail.com","login":null,"count":4},{"name":"Ezra Kanake","email":"10kanake@gmail.com","login":null,"count":4},{"name":"Habib Shakibanejad","email":"35790658+habbs19@users.noreply.github.com","login":null,"count":4},{"name":"joshikapujari","email":"pjoshika811@gmail.com","login":null,"count":4},{"name":"Azri","email":"muhammad.azri.f.s@gmail.com","login":null,"count":3},{"name":"Roger Hannagan","email":"roger.hannagan113@gmail.com","login":null,"count":3},{"name":"Tarek-Bohdima","email":"tarek.buhdeima@gmail.com","login":null,"count":3},{"name":"beastlyCoder","email":"imaaronacs@gmail.com","login":null,"count":3},{"name":"mckornfield","email":"matthew.kornfield@appian.com","login":null,"count":3},{"name":"ArtemPolovin","email":"65748653+ArtemPolovin@users.noreply.github.com","login":null,"count":2},{"name":"Kyle Zhu","email":"jiacongzhu66@gmail.com","login":null,"count":2},{"name":"Marcellino Chris O'Vara","email":"marcellinocovara@gmail.com","login":null,"count":2},{"name":"Rooter","email":"rooter@Rooters-MacBook-Pro-2.local","login":null,"count":2},{"name":"Ryan Beckett","email":"beckett.ryan@gmail.com","login":null,"count":2},{"name":"Siddharth sharma","email":"ethicalhacker365@gmail.com","login":null,"count":2},{"name":"Siddharth sharma","email":"siddharthsharma24.7.360@gmail.com","login":null,"count":2},{"name":"Zhixuan Li","email":"lizhixuan16@gmail.com","login":null,"count":2},{"name":"brntsw","email":"bruno.pardini6@gmail.com","login":null,"count":2},{"name":"Brandon Lin","email":"44827002+JellyRollJunior@users.noreply.github.com","login":null,"count":1},{"name":"Kelvin Pere","email":"36895007+KelvnPere@users.noreply.github.com","login":null,"count":1},{"name":"Krešimir Pleše","email":"kresimir.plese@appscometrue.com","login":null,"count":1},{"name":"Luiz Carlos","email":"lc.estevao23@gmail.com","login":null,"count":1},{"name":"MRI1822git","email":"mriganks@outlook.com","login":null,"count":1},{"name":"Melissa Linkert","email":"melissa.linkert@gmail.com","login":null,"count":1},{"name":"Natalie Kim","email":"93747759+nationalkim@users.noreply.github.com","login":null,"count":1},{"name":"PatchDynamics","email":"xone@fromthegut.org","login":null,"count":1},{"name":"Renan Barros","email":"renanbarrosrbs@gmail.com","login":null,"count":1},{"name":"Sakya-Kanuparthy","email":"70663149+Sakya-Kanuparthy@users.noreply.github.com","login":null,"count":1},{"name":"Sara Gupta","email":"100728009+SaraGupt@users.noreply.github.com","login":null,"count":1},{"name":"Tristan Elliott","email":"47083513+thePlebDev@users.noreply.github.com","login":null,"count":1},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]@users.noreply.github.com","login":null,"count":1},{"name":"erinfolami","email":"50245033+erinfolami@users.noreply.github.com","login":null,"count":1}],"total_commits":1501,"total_committers":54,"total_bot_commits":1,"total_bot_committers":1,"mean_commits":27.796296296296298,"dds":0.6715522984676883,"past_year_committers":[{"name":"Taofeek","email":"oduola.taofeekkola@gmail.com","login":null,"count":11},{"name":"EsraaAkram","email":"totalappsingplay@gmail.com","login":null,"count":4},{"name":"joshikapujari","email":"pjoshika811@gmail.com","login":null,"count":4},{"name":"Azri","email":"muhammad.azri.f.s@gmail.com","login":null,"count":3},{"name":"Gaurav","email":"gauravjain.dtu@gmail.com","login":null,"count":2},{"name":"Zhixuan Li","email":"lizhixuan16@gmail.com","login":null,"count":2},{"name":"Jonathan Muller","email":"elforama@gmail.com","login":null,"count":1},{"name":"Sakya-Kanuparthy","email":"70663149+Sakya-Kanuparthy@users.noreply.github.com","login":null,"count":1},{"name":"Tarek-Bohdima","email":"tarek.buhdeima@gmail.com","login":null,"count":1}],"past_year_total_commits":29,"past_year_total_committers":9,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":3.2222222222222223,"past_year_dds":0.6206896551724138,"last_synced_at":"2025-09-08T16:22:57.212Z","last_synced_commit":"3f16a044e39c5234d3803d18500c5f819abfe201","created_at":"2023-03-27T11:32:01.141Z","updated_at":"2025-09-08T16:22:51.758Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:16.827Z","repositories_count":5484648,"commits_count":854580863,"contributors_count":31160861,"owners_count":909740,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"Greenstand/treetracker-android","html_url":"https://github.com/Greenstand/treetracker-android","last_synced_at":"2025-08-31T10:34:35.478Z","status":"error","issues_count":594,"pull_requests_count":564,"avg_time_to_close_issue":9621793.994296579,"avg_time_to_close_pull_request":1411073.6510791366,"issues_closed_count":526,"pull_requests_closed_count":556,"pull_request_authors_count":51,"issue_authors_count":38,"avg_comments_per_issue":1.734006734006734,"avg_comments_per_pull_request":0.6879432624113475,"merged_pull_requests_count":475,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":27,"past_year_pull_requests_count":25,"past_year_avg_time_to_close_issue":5300517.619047619,"past_year_avg_time_to_close_pull_request":63899.434782608696,"past_year_issues_closed_count":21,"past_year_pull_requests_closed_count":23,"past_year_pull_request_authors_count":9,"past_year_issue_authors_count":6,"past_year_avg_comments_per_issue":0.5925925925925926,"past_year_avg_comments_per_pull_request":0.28,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":20,"created_at":"2023-05-09T10:36:40.539Z","updated_at":"2025-09-03T04:33:31.378Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Greenstand%2Ftreetracker-android/issues","issue_labels_count":{"android":100,"bug":82,"UX/UI":38,"enhancement":32,"good first issue":26,"Feature":21,"p1":21,"help wanted":19,"release 2.2":17,"p2":16,"Ice Box":15,"Design":12,"question":10,"p0":8,"web/admin panel":5,"crash - analyzing":4,"needs analysis":3,"Epic":3,"in testing":2,"payments":1,"infra":1,"work in progress":1,"wontfix":1,"library update":1,"Documentation":1},"pull_request_labels_count":{"android":3,"work in progress":3,"Feature":2,"needs analysis":2,"dependencies":2,"bug":1},"issue_author_associations_count":{"CONTRIBUTOR":468,"COLLABORATOR":68,"NONE":53,"MEMBER":3},"pull_request_author_associations_count":{"CONTRIBUTOR":367,"COLLABORATOR":187,"NONE":26,"MEMBER":11},"issue_authors":{"ZavenArra":159,"Elforama":117,"Davidezrajay":115,"sebastiangaertner":55,"EngrTaofeek":41,"arunbakt":20,"Surbhi79":16,"nprude":10,"ghost":9,"LaviniaDragunoi":7,"camwebb":4,"dezidaisy":3,"martinariasf":3,"shubhamk008":3,"imos64":3,"Tarek-Bohdima":2,"AndroidDev77":2,"saramuseo":2,"Amritah9":2,"AndrewKerr47":1,"amit88265":1,"sametceylan":1,"zularizal":1,"mozarty":1,"donenoyes":1,"jhoon":1,"debpedrano":1,"jbeguna04":1,"habbs19":1,"Kpoke":1,"JonTrimarco":1,"peacengn":1,"natalieschulz":1,"aaronallenCS":1,"peakvalleytech":1,"sidsharma2002":1,"nmcharlton":1,"ryan-beckett":1},"pull_request_authors":{"Elforama":188,"EngrTaofeek":123,"arunbakt":48,"ZavenArra":44,"Mzazi25":17,"LaviniaDragunoi":16,"sebastiangaertner":14,"Surbhi79":10,"lastforeverzl":9,"Davidezrajay":8,"aaronallenCS":8,"ghost":7,"gaurav133":7,"sidsharma2002":7,"mozarty":5,"Tarek-Bohdima":5,"kanake10":5,"thenotoriousrog":4,"EmmaLi1":4,"Sakya-Kanuparthy":4,"jhoon":4,"hz97":3,"DominionSoftware":3,"habbs19":3,"brntsw":3,"ArtemPolovin":3,"mckornfield":3,"Joshika8055":2,"S1210":2,"darrengyl":2,"SaraGupt":2,"muhAzri":2,"ryan-beckett":2,"Naphtali-cpu":2,"MarcellinoCO":2,"EsraaAkram":2,"gravetriste":2,"precious3173":2,"dependabot[bot]":2,"JellyRollJunior":1,"jiacongkylezhu":1,"LuizCarlos23":1,"erinfolami":1,"KelvnPere":1,"abdullah-maher-abbod":1,"peacengn":1,"renanrbs":1,"MRI1822":1,"thePlebDev":1,"dezidaisy":1,"melissalinkert":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10058116,"issues_count":30985287,"pull_requests_count":93679802,"authors_count":10684821,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"UX/UI":2,"android":2,"Design":2,"enhancement":1},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"COLLABORATOR":17,"NONE":7,"MEMBER":2,"CONTRIBUTOR":1},"past_year_pull_request_author_associations_count":{"COLLABORATOR":28,"CONTRIBUTOR":15,"NONE":4,"MEMBER":2},"past_year_issue_authors":{"EngrTaofeek":17,"imos64":3,"Amritah9":2,"saramuseo":2,"Tarek-Bohdima":2,"Davidezrajay":1},"past_year_pull_request_authors":{"EngrTaofeek":28,"Sakya-Kanuparthy":4,"EmmaLi1":4,"gaurav133":3,"Joshika8055":2,"Elforama":2,"EsraaAkram":2,"Tarek-Bohdima":2,"muhAzri":2},"maintainers":[{"login":"EngrTaofeek","count":164,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/EngrTaofeek"},{"login":"arunbakt","count":68,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/arunbakt"},{"login":"LaviniaDragunoi","count":23,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/LaviniaDragunoi"},{"login":"Tarek-Bohdima","count":7,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Tarek-Bohdima"},{"login":"jhoon","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhoon"},{"login":"MarcellinoCO","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/MarcellinoCO"}],"active_maintainers":[{"login":"EngrTaofeek","count":45,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/EngrTaofeek"},{"login":"Tarek-Bohdima","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Tarek-Bohdima"}]},"events":{"total":{"IssuesEvent":44,"WatchEvent":4,"IssueCommentEvent":24,"PushEvent":27,"PullRequestEvent":42,"ForkEvent":6,"CreateEvent":12},"last_year":{"IssuesEvent":44,"WatchEvent":4,"IssueCommentEvent":24,"PushEvent":27,"PullRequestEvent":42,"ForkEvent":6,"CreateEvent":12}},"keywords":["android"],"dependencies":[{"ecosystem":"maven","filepath":"app/build.gradle","sha":null,"kind":"manifest","created_at":"2022-07-12T04:31:24.783Z","updated_at":"2022-07-12T04:31:24.783Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/app/build.gradle","dependencies":[{"id":151882500,"package_name":"com.amazonaws:aws-android-sdk-core","ecosystem":"maven","requirements":"2.16.8","direct":true,"kind":"implementation","optional":false},{"id":151882501,"package_name":"com.amazonaws:aws-android-sdk-s3","ecosystem":"maven","requirements":"2.16.8","direct":true,"kind":"implementation","optional":false},{"id":151882502,"package_name":"io.insert-koin:koin-android","ecosystem":"maven","requirements":"$koin_version","direct":true,"kind":"implementation","optional":false},{"id":151882503,"package_name":"io.insert-koin:koin-androidx-compose","ecosystem":"maven","requirements":"$koin_version","direct":true,"kind":"implementation","optional":false},{"id":151882504,"package_name":"io.insert-koin:koin-test","ecosystem":"maven","requirements":"$koin_version","direct":true,"kind":"testImplementation","optional":false},{"id":151882505,"package_name":"androidx.appcompat:appcompat","ecosystem":"maven","requirements":"1.3.1","direct":true,"kind":"implementation","optional":false},{"id":151882506,"package_name":"androidx.multidex:multidex","ecosystem":"maven","requirements":"2.0.1","direct":true,"kind":"implementation","optional":false},{"id":151882507,"package_name":"androidx.exifinterface:exifinterface","ecosystem":"maven","requirements":"1.3.2","direct":true,"kind":"implementation","optional":false},{"id":151882508,"package_name":"androidx.lifecycle:lifecycle-viewmodel-ktx","ecosystem":"maven","requirements":"2.3.1","direct":true,"kind":"implementation","optional":false},{"id":151882509,"package_name":"androidx.lifecycle:lifecycle-runtime-ktx","ecosystem":"maven","requirements":"2.3.1","direct":true,"kind":"implementation","optional":false},{"id":151882510,"package_name":"androidx.work:work-runtime-ktx","ecosystem":"maven","requirements":"2.7.1","direct":true,"kind":"implementation","optional":false},{"id":151882511,"package_name":"androidx.compose.runtime:runtime","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882512,"package_name":"androidx.compose.runtime:runtime-livedata","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882513,"package_name":"androidx.compose.foundation:foundation","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882514,"package_name":"androidx.compose.foundation:foundation-layout","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882515,"package_name":"androidx.compose.ui:ui","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882516,"package_name":"androidx.compose.ui:ui-tooling","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882517,"package_name":"androidx.compose.material:material","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882518,"package_name":"androidx.compose.animation:animation","ecosystem":"maven","requirements":"$compose_version","direct":true,"kind":"implementation","optional":false},{"id":151882519,"package_name":"androidx.activity:activity-compose","ecosystem":"maven","requirements":"1.3.0","direct":true,"kind":"implementation","optional":false},{"id":151882520,"package_name":"androidx.navigation:navigation-compose","ecosystem":"maven","requirements":"2.4.1","direct":true,"kind":"implementation","optional":false},{"id":151882521,"package_name":"com.google.accompanist:accompanist-permissions","ecosystem":"maven","requirements":"0.21.1-beta","direct":true,"kind":"implementation","optional":false},{"id":151882522,"package_name":"org.jetbrains.kotlin:kotlin-stdlib-jdk7","ecosystem":"maven","requirements":"$kotlin_version","direct":true,"kind":"implementation","optional":false},{"id":151882523,"package_name":"org.jetbrains.kotlinx:kotlinx-coroutines-core","ecosystem":"maven","requirements":"1.5.0","direct":true,"kind":"implementation","optional":false},{"id":151882524,"package_name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","ecosystem":"maven","requirements":"1.5.0","direct":true,"kind":"implementation","optional":false},{"id":151882525,"package_name":"org.jetbrains.kotlinx:kotlinx-datetime","ecosystem":"maven","requirements":"0.3.2","direct":true,"kind":"implementation","optional":false},{"id":151882526,"package_name":"androidx.room:room-runtime","ecosystem":"maven","requirements":"2.4.0-beta01","direct":true,"kind":"implementation","optional":false},{"id":151882527,"package_name":"androidx.room:room-ktx","ecosystem":"maven","requirements":"2.4.0-beta01","direct":true,"kind":"implementation","optional":false},{"id":151882528,"package_name":"com.squareup.retrofit2:converter-gson","ecosystem":"maven","requirements":"${retrofit2Version}","direct":true,"kind":"api","optional":false},{"id":151882529,"package_name":"com.squareup.retrofit2:retrofit","ecosystem":"maven","requirements":"${retrofit2Version}","direct":true,"kind":"implementation","optional":false},{"id":151882530,"package_name":"com.squareup.okhttp3:logging-interceptor","ecosystem":"maven","requirements":"4.9.3","direct":true,"kind":"implementation","optional":false},{"id":151882531,"package_name":"androidx.camera:camera-core","ecosystem":"maven","requirements":"$camerax_version","direct":true,"kind":"implementation","optional":false},{"id":151882532,"package_name":"androidx.camera:camera-camera2","ecosystem":"maven","requirements":"$camerax_version","direct":true,"kind":"implementation","optional":false},{"id":151882533,"package_name":"androidx.camera:camera-lifecycle","ecosystem":"maven","requirements":"$camerax_version","direct":true,"kind":"implementation","optional":false},{"id":151882534,"package_name":"androidx.camera:camera-view","ecosystem":"maven","requirements":"$camerax_view_version","direct":true,"kind":"implementation","optional":false},{"id":151882535,"package_name":"androidx.camera:camera-extensions","ecosystem":"maven","requirements":"$camerax_ext_version","direct":true,"kind":"implementation","optional":false},{"id":151882536,"package_name":"com.jakewharton.timber:timber","ecosystem":"maven","requirements":"4.7.1","direct":true,"kind":"api","optional":false},{"id":151882537,"package_name":"androidx.legacy:legacy-support-v4","ecosystem":"maven","requirements":"${androidSupportVersion}","direct":true,"kind":"implementation","optional":false},{"id":151882538,"package_name":"com.google.firebase:firebase-analytics","ecosystem":"maven","requirements":"18.0.2","direct":true,"kind":"implementation","optional":false},{"id":151882539,"package_name":"com.google.firebase:firebase-crashlytics-ktx","ecosystem":"maven","requirements":"17.3.1","direct":true,"kind":"implementation","optional":false},{"id":151882540,"package_name":"com.google.firebase:firebase-auth-ktx","ecosystem":"maven","requirements":"20.0.2","direct":true,"kind":"implementation","optional":false},{"id":151882541,"package_name":"com.google.firebase:firebase-iid","ecosystem":"maven","requirements":"21.0.1","direct":true,"kind":"implementation","optional":false},{"id":151882542,"package_name":"io.mockk:mockk","ecosystem":"maven","requirements":"1.10.0","direct":true,"kind":"testImplementation","optional":false},{"id":151882543,"package_name":"junit:junit","ecosystem":"maven","requirements":"4.13.1","direct":true,"kind":"testImplementation","optional":false},{"id":151882544,"package_name":"androidx.room:room-testing","ecosystem":"maven","requirements":"2.2.6","direct":true,"kind":"testImplementation","optional":false},{"id":151882545,"package_name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","ecosystem":"maven","requirements":"1.3.9","direct":true,"kind":"testImplementation","optional":false},{"id":151882546,"package_name":"androidx.arch.core:core-testing","ecosystem":"maven","requirements":"2.1.0","direct":true,"kind":"testImplementation","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-07-12T04:31:25.480Z","updated_at":"2022-07-12T04:31:25.480Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/Gemfile","dependencies":[{"id":151890042,"package_name":"fastlane","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile.lock","sha":null,"kind":"lockfile","created_at":"2022-07-12T04:31:25.914Z","updated_at":"2022-07-12T04:31:25.914Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/Gemfile.lock","dependencies":[{"id":151891341,"package_name":"CFPropertyList","ecosystem":"rubygems","requirements":"3.0.2","direct":false,"kind":"runtime","optional":false},{"id":151891342,"package_name":"addressable","ecosystem":"rubygems","requirements":"2.8.0","direct":false,"kind":"runtime","optional":false},{"id":151891343,"package_name":"atomos","ecosystem":"rubygems","requirements":"0.1.3","direct":false,"kind":"runtime","optional":false},{"id":151891344,"package_name":"aws-eventstream","ecosystem":"rubygems","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":151891345,"package_name":"aws-partitions","ecosystem":"rubygems","requirements":"1.374.0","direct":false,"kind":"runtime","optional":false},{"id":151891346,"package_name":"aws-sdk-core","ecosystem":"rubygems","requirements":"3.107.0","direct":false,"kind":"runtime","optional":false},{"id":151891347,"package_name":"aws-sdk-kms","ecosystem":"rubygems","requirements":"1.38.0","direct":false,"kind":"runtime","optional":false},{"id":151891348,"package_name":"aws-sdk-s3","ecosystem":"rubygems","requirements":"1.81.0","direct":false,"kind":"runtime","optional":false},{"id":151891349,"package_name":"aws-sigv4","ecosystem":"rubygems","requirements":"1.2.2","direct":false,"kind":"runtime","optional":false},{"id":151891350,"package_name":"babosa","ecosystem":"rubygems","requirements":"1.0.3","direct":false,"kind":"runtime","optional":false},{"id":151891351,"package_name":"claide","ecosystem":"rubygems","requirements":"1.0.3","direct":false,"kind":"runtime","optional":false},{"id":151891352,"package_name":"colored","ecosystem":"rubygems","requirements":"1.2","direct":false,"kind":"runtime","optional":false},{"id":151891353,"package_name":"colored2","ecosystem":"rubygems","requirements":"3.1.2","direct":false,"kind":"runtime","optional":false},{"id":151891354,"package_name":"commander-fastlane","ecosystem":"rubygems","requirements":"4.4.6","direct":false,"kind":"runtime","optional":false},{"id":151891355,"package_name":"declarative","ecosystem":"rubygems","requirements":"0.0.20","direct":false,"kind":"runtime","optional":false},{"id":151891356,"package_name":"declarative-option","ecosystem":"rubygems","requirements":"0.1.0","direct":false,"kind":"runtime","optional":false},{"id":151891357,"package_name":"digest-crc","ecosystem":"rubygems","requirements":"0.6.1","direct":false,"kind":"runtime","optional":false},{"id":151891358,"package_name":"domain_name","ecosystem":"rubygems","requirements":"0.5.20190701","direct":false,"kind":"runtime","optional":false},{"id":151891359,"package_name":"dotenv","ecosystem":"rubygems","requirements":"2.7.6","direct":false,"kind":"runtime","optional":false},{"id":151891360,"package_name":"emoji_regex","ecosystem":"rubygems","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":151891361,"package_name":"excon","ecosystem":"rubygems","requirements":"0.76.0","direct":false,"kind":"runtime","optional":false},{"id":151891362,"package_name":"faraday","ecosystem":"rubygems","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":151891363,"package_name":"faraday-cookie_jar","ecosystem":"rubygems","requirements":"0.0.7","direct":false,"kind":"runtime","optional":false},{"id":151891364,"package_name":"faraday_middleware","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":151891365,"package_name":"fastimage","ecosystem":"rubygems","requirements":"2.2.0","direct":false,"kind":"runtime","optional":false},{"id":151891366,"package_name":"fastlane","ecosystem":"rubygems","requirements":"2.160.0","direct":false,"kind":"runtime","optional":false},{"id":151891367,"package_name":"fastlane-plugin-firebase_app_distribution","ecosystem":"rubygems","requirements":"0.3.4","direct":false,"kind":"runtime","optional":false},{"id":151891368,"package_name":"gh_inspector","ecosystem":"rubygems","requirements":"1.1.3","direct":false,"kind":"runtime","optional":false},{"id":151891369,"package_name":"google-api-client","ecosystem":"rubygems","requirements":"0.38.0","direct":false,"kind":"runtime","optional":false},{"id":151891370,"package_name":"google-cloud-core","ecosystem":"rubygems","requirements":"1.5.0","direct":false,"kind":"runtime","optional":false},{"id":151891371,"package_name":"google-cloud-env","ecosystem":"rubygems","requirements":"1.3.3","direct":false,"kind":"runtime","optional":false},{"id":151891372,"package_name":"google-cloud-errors","ecosystem":"rubygems","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":151891373,"package_name":"google-cloud-storage","ecosystem":"rubygems","requirements":"1.29.0","direct":false,"kind":"runtime","optional":false},{"id":151891374,"package_name":"googleauth","ecosystem":"rubygems","requirements":"0.13.1","direct":false,"kind":"runtime","optional":false},{"id":151891375,"package_name":"highline","ecosystem":"rubygems","requirements":"1.7.10","direct":false,"kind":"runtime","optional":false},{"id":151891376,"package_name":"http-cookie","ecosystem":"rubygems","requirements":"1.0.3","direct":false,"kind":"runtime","optional":false},{"id":151891377,"package_name":"httpclient","ecosystem":"rubygems","requirements":"2.8.3","direct":false,"kind":"runtime","optional":false},{"id":151891378,"package_name":"jmespath","ecosystem":"rubygems","requirements":"1.6.1","direct":false,"kind":"runtime","optional":false},{"id":151891379,"package_name":"json","ecosystem":"rubygems","requirements":"2.3.1","direct":false,"kind":"runtime","optional":false},{"id":151891380,"package_name":"jwt","ecosystem":"rubygems","requirements":"2.2.2","direct":false,"kind":"runtime","optional":false},{"id":151891381,"package_name":"memoist","ecosystem":"rubygems","requirements":"0.16.2","direct":false,"kind":"runtime","optional":false},{"id":151891382,"package_name":"mini_magick","ecosystem":"rubygems","requirements":"4.10.1","direct":false,"kind":"runtime","optional":false},{"id":151891383,"package_name":"mini_mime","ecosystem":"rubygems","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":151891384,"package_name":"multi_json","ecosystem":"rubygems","requirements":"1.15.0","direct":false,"kind":"runtime","optional":false},{"id":151891385,"package_name":"multipart-post","ecosystem":"rubygems","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":151891386,"package_name":"nanaimo","ecosystem":"rubygems","requirements":"0.3.0","direct":false,"kind":"runtime","optional":false},{"id":151891387,"package_name":"naturally","ecosystem":"rubygems","requirements":"2.2.0","direct":false,"kind":"runtime","optional":false},{"id":151891388,"package_name":"os","ecosystem":"rubygems","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":151891389,"package_name":"plist","ecosystem":"rubygems","requirements":"3.5.0","direct":false,"kind":"runtime","optional":false},{"id":151891390,"package_name":"public_suffix","ecosystem":"rubygems","requirements":"4.0.6","direct":false,"kind":"runtime","optional":false},{"id":151891391,"package_name":"rake","ecosystem":"rubygems","requirements":"13.0.1","direct":false,"kind":"runtime","optional":false},{"id":151891392,"package_name":"representable","ecosystem":"rubygems","requirements":"3.0.4","direct":false,"kind":"runtime","optional":false},{"id":151891393,"package_name":"retriable","ecosystem":"rubygems","requirements":"3.1.2","direct":false,"kind":"runtime","optional":false},{"id":151891394,"package_name":"rouge","ecosystem":"rubygems","requirements":"2.0.7","direct":false,"kind":"runtime","optional":false},{"id":151891395,"package_name":"rubyzip","ecosystem":"rubygems","requirements":"2.3.2","direct":false,"kind":"runtime","optional":false},{"id":151891396,"package_name":"security","ecosystem":"rubygems","requirements":"0.1.3","direct":false,"kind":"runtime","optional":false},{"id":151891397,"package_name":"signet","ecosystem":"rubygems","requirements":"0.14.0","direct":false,"kind":"runtime","optional":false},{"id":151891398,"package_name":"simctl","ecosystem":"rubygems","requirements":"1.6.8","direct":false,"kind":"runtime","optional":false},{"id":151891399,"package_name":"slack-notifier","ecosystem":"rubygems","requirements":"2.3.2","direct":false,"kind":"runtime","optional":false},{"id":151891400,"package_name":"terminal-notifier","ecosystem":"rubygems","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":151891401,"package_name":"terminal-table","ecosystem":"rubygems","requirements":"1.8.0","direct":false,"kind":"runtime","optional":false},{"id":151891402,"package_name":"tty-cursor","ecosystem":"rubygems","requirements":"0.7.1","direct":false,"kind":"runtime","optional":false},{"id":151891403,"package_name":"tty-screen","ecosystem":"rubygems","requirements":"0.8.1","direct":false,"kind":"runtime","optional":false},{"id":151891404,"package_name":"tty-spinner","ecosystem":"rubygems","requirements":"0.9.3","direct":false,"kind":"runtime","optional":false},{"id":151891405,"package_name":"uber","ecosystem":"rubygems","requirements":"0.1.0","direct":false,"kind":"runtime","optional":false},{"id":151891406,"package_name":"unf","ecosystem":"rubygems","requirements":"0.1.4","direct":false,"kind":"runtime","optional":false},{"id":151891407,"package_name":"unf_ext","ecosystem":"rubygems","requirements":"0.0.7.7","direct":false,"kind":"runtime","optional":false},{"id":151891408,"package_name":"unicode-display_width","ecosystem":"rubygems","requirements":"1.7.0","direct":false,"kind":"runtime","optional":false},{"id":151891409,"package_name":"word_wrap","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":151891410,"package_name":"xcodeproj","ecosystem":"rubygems","requirements":"1.18.0","direct":false,"kind":"runtime","optional":false},{"id":151891411,"package_name":"xcpretty","ecosystem":"rubygems","requirements":"0.3.0","direct":false,"kind":"runtime","optional":false},{"id":151891412,"package_name":"xcpretty-travis-formatter","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pull_request.yml","sha":null,"kind":"manifest","created_at":"2023-02-16T07:15:22.139Z","updated_at":"2023-02-16T07:15:22.139Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/.github/workflows/pull_request.yml","dependencies":[{"id":7706108231,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7706108232,"package_name":"actions/setup-java","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release-beta.yaml","sha":null,"kind":"manifest","created_at":"2023-02-16T07:15:22.453Z","updated_at":"2023-02-16T07:15:22.453Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/.github/workflows/release-beta.yaml","dependencies":[{"id":7706109044,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7706109045,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"maven","filepath":"build.gradle","sha":null,"kind":"manifest","created_at":"2023-09-21T19:09:18.336Z","updated_at":"2023-09-21T19:09:18.336Z","repository_link":"https://github.com/Greenstand/treetracker-android/blob/master/build.gradle","dependencies":[]}],"score":9.100971834920818,"created_at":"2025-09-08T15:39:27.035Z","updated_at":"2025-10-07T08:27:27.620Z","avatar_url":"https://github.com/Greenstand.png","language":"Kotlin","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":["https://www.paypal.com/donate/?hosted_button_id=3YGXULRCRZZEQ"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/76094","html_url":"https://science.ecosyste.ms/projects/76094"}