{"id":15110376,"url":"https://github.com/android/trackr","last_synced_at":"2025-09-27T12:32:23.038Z","repository":{"id":37906301,"uuid":"344900266","full_name":"android/trackr","owner":"android","description":null,"archived":true,"fork":false,"pushed_at":"2022-11-01T17:34:37.000Z","size":1276,"stargazers_count":658,"open_issues_count":20,"forks_count":93,"subscribers_count":67,"default_branch":"main","last_synced_at":"2024-09-26T23:44:40.076Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/android.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-05T18:32:20.000Z","updated_at":"2024-09-13T13:01:09.000Z","dependencies_parsed_at":"2023-01-20T20:17:48.618Z","dependency_job_id":null,"html_url":"https://github.com/android/trackr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android%2Ftrackr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android%2Ftrackr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android%2Ftrackr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/android%2Ftrackr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/android","download_url":"https://codeload.github.com/android/trackr/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234437994,"owners_count":18832599,"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":[],"created_at":"2024-09-25T23:44:39.667Z","updated_at":"2025-09-27T12:32:17.677Z","avatar_url":"https://github.com/android.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"Trackr Android App\n==================\n\n**Note**: Trackr uses version 7 of Gradle, which currently requires Android Studio Beta or Canary.\n\nTrackr is a sample task management app used to explore common UI patterns\nfrom the perspective of supporting accessibility. Trackr is currently under\ndevelopment.\n\nUsing Trackr, end users can discover, create, and edit tasks; they can\nassign tasks to team members and they can associate different tags with\neach task.  Users can archive a task by swiping right and they can modify a\ntask's priority by dragging it up or down.\n\nDevelopers are encouraged to explore Trackr using an accessibility service\nlike [Talkback](https://support.google.com/accessibility/android/answer/6283677?hl=en) or\n[Switch Access](https://support.google.com/accessibility/android/answer/6122836?hl=en);\ndevelopers are also encouraged to try out the various accessibility settings\nfound on their devices (see Settings \u003e Accessibility on most Android phones)\nwhen using Trackr. If you have any suggestions, please create an issue\n(see below).\n\nTrackr is designed with the goal of allowing all users to enjoy its core\nfunctionality, including users with disabilities who may interact with their\ndevices using accessibility services. So, for example, while blind and low\nvision users or users with manual dexterity issues may not be able to perform\nthe swipe gesture to archive an item or drag and drop items to reorder their\npriority, they should nonetheless be able to access the archive and reorder\nfunctionality through the accessibility service they are using.\n\n\nAPIs showcased\n---------------------------\nThe following accessibility APIs (non exhaustive list) are showcased in this sample:\n\n[ViewCompat#addAccessibilityAction()](https://developer.android.com/reference/androidx/core/view/ViewCompat#addAccessibilityAction(android.view.View,%20java.lang.CharSequence,%20androidx.core.view.accessibility.AccessibilityViewCommand)): to surface functionality like swipe-to-archive, drag and drop, etc.\n\n[ViewCompat#performAccessiblityAction()](https://developer.android.com/reference/androidx/core/view/ViewCompat#performAccessibilityAction(android.view.View,%20int,%20android.os.Bundle)): used in testing.\n\n[ViewCompat#replaceAccessibilityAction()](https://developer.android.com/reference/androidx/core/view/ViewCompat#replaceAccessibilityAction(android.view.View,%20androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat,%20java.lang.CharSequence,%20androidx.core.view.accessibility.AccessibilityViewCommand)): used to customize the label for associated with an action.\n\n[ViewCompat.setStateDescription()](https://developer.android.com/reference/androidx/core/view/ViewCompat#setStateDescription(android.view.View,%20java.lang.CharSequence)): used to specify state associated with a view.\n\n[AccessibilityManager#getRecommendedTimeoutMillis()](https://developer.android.com/reference/android/view/accessibility/AccessibilityManager#getRecommendedTimeoutMillis(int,%20int)): used to specify the timeout for ephemeral content.\n\nGetting Started\n-------------------------\n\nThis project uses the Gradle build system. To build this project, use the\n`gradlew build` command or use \"Import Project\" in Android Studio.\n\nTo run tests, run `gradlew test`\n\nTo learn more about Android accessibility, visit the\n[Android accessibility](https://www.android.com/accessibility/) page. To learn\nmore about developer facing aspects of Android accessibility, read the\n[accessibility developer guide](https://developer.android.com/guide/topics/ui/accessibility).\n\nScreenshots\n-----------\n\n|Home Screen TalkBack|Detail|Edit|\n|:--:|:--:|:--:|\n|\u003cimg src=\"screenshots/talkback_home.png\" alt=\"Home Screen TalkBack\" title=\"Task list screen with TalkBack on\" width=\"240px\"\u003e|\u003cimg src=\"screenshots/detail_dark.png\" alt=\"Detail\" title=\"Detail screen in dark mode\" width=\"240px\"\u003e|\u003cimg src=\"screenshots/edit.png\" alt=\"Edit\" title=\"Task edit screen\" width=\"240px\"\u003e|\n\nIssues\n-----------\n\nWe are continuously working to improve this sample and add new features. If\nyou have suggestions for improvement or if you encounter a problem, please\nprovide feedback to us via the issue tracker. When creating an issue, try to\ninclude the following:\n\n- The device manufacturer and model\n- The Android build running on the device\n- If using an accessibility service (for example a screen reader), the name\nand version number of that service\n- A description of the issue; include screenshots/screencaps if you think\nthey'll help us understand the problem\n\nLicense\n-------------\n\nCopyright 2021 Google, Inc.\n\nLicensed to the Apache Software Foundation (ASF) under one or more contributor\nlicense agreements.  See the NOTICE file distributed with this work for\nadditional information regarding copyright ownership.  The ASF licenses this\nfile to you under the Apache License, Version 2.0 (the \"License\"); you may not\nuse this file except in compliance with the License.  You may obtain a copy of\nthe License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\nWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the\nLicense for the specific language governing permissions and limitations under\nthe License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandroid%2Ftrackr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandroid%2Ftrackr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandroid%2Ftrackr/lists"}