{"id":18620949,"url":"https://github.com/agnosticui/a11y-tabs","last_synced_at":"2025-04-11T02:31:28.519Z","repository":{"id":112274093,"uuid":"421788730","full_name":"AgnosticUI/a11y-tabs","owner":"AgnosticUI","description":"A lightweight (\u003c1Kb) JavaScript package to facilitate a11y-compliant tabbed interfaces","archived":false,"fork":false,"pushed_at":"2021-11-04T21:21:42.000Z","size":229,"stargazers_count":12,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-08T16:04:11.638Z","etag":null,"topics":["a11y","accessibility","tabs"],"latest_commit_sha":null,"homepage":"https://agnosticui.github.io/a11y-tabs/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AgnosticUI.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-10-27T11:22:19.000Z","updated_at":"2025-02-02T03:37:14.000Z","dependencies_parsed_at":"2023-07-02T08:41:25.582Z","dependency_job_id":null,"html_url":"https://github.com/AgnosticUI/a11y-tabs","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/AgnosticUI%2Fa11y-tabs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgnosticUI%2Fa11y-tabs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgnosticUI%2Fa11y-tabs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AgnosticUI%2Fa11y-tabs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AgnosticUI","download_url":"https://codeload.github.com/AgnosticUI/a11y-tabs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248329581,"owners_count":21085562,"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":["a11y","accessibility","tabs"],"created_at":"2024-11-07T04:08:35.750Z","updated_at":"2025-04-11T02:31:23.493Z","avatar_url":"https://github.com/AgnosticUI.png","language":"JavaScript","funding_links":[],"categories":["A11y Components"],"sub_categories":["Related community list"],"readme":"# [A11y Tabs](https://github.com/AgnosticUI/a11y-tabs)\n\nA lightweight (\u003c1Kb) JavaScript package to facilitate a11y-compliant tabbed interfaces.\n\n- [Documentation↗](https://agnosticui.github.io/a11y-tabs/)\n- [Demo on Codepen↗](https://codepen.io/roblevin/pen/qBXmvoL)\n\n**Features:**\n\n- Support for keyboard navigation `home`, `end`, `left`, `right`, `enter`, and `space`\n- Proper use of `aria-*` attributes applied\n- Circular navigation and proper `tab` and arrow navigation focus\n- Lightweight (\u003c 1Kb) \n- Tested\n- Available as esm and umd\n- Supports `prefers reduced motion` system preference\n\n**Unavailble features:**\n\n- `aria-orientation` vertical with up, down arrow support (coming soon!)\n- This implementation uses the manual activation pattern which requires the user to `click` or press `enter` / `space` on a focused tab button to open its corresponding panel (as opposed to the [selection follow focus](https://www.w3.org/TR/wai-aria-practices-1.1/#kbd_selection_follows_focus) or automatic activation patterns)\n\n## Credits \u0026 Inspiration\n\n### Kitty Giraudel\nA heartfelt thank you to [@KittyGiraudel](https://github.com/KittyGiraudel) for creating [a11y-dialog](https://github.com/KittyGiraudel/a11y-dialog) which inspired me to create a kindred-spirited and comparable `a11y-tabs`. Specifically, I found `a11y-dialog`'s small surface API, clear documentation and sandbox demo made ramping up quite efficient. As such, I followed the same patterns with `a11y-tabs`.\n\n### WAI-ARIA \u0026amp; MDN\nI was also inspired by the [WAI-ARIA practices](https://www.w3.org/TR/wai-aria-practices-1.1/#intro) resources, and [MDN tab role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Tab_Role) documentation efforts. Both resources certainly provided helpful and prescriptive guidance for this project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagnosticui%2Fa11y-tabs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagnosticui%2Fa11y-tabs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagnosticui%2Fa11y-tabs/lists"}