# @devtools-ds/tree A versatile expanding `Tree` component, with full keyboard navigation following the [Tree View Design Pattern](https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-2/treeview-2a.html). ## Installation ```sh npm i @devtools-ds/tree # or with yarn yarn add @devtools-ds/tree ``` Then to use the component in your code just import it! ```js import { Tree } from "@devtools-ds/tree"; ``` ## Accessibility Approach This component follows the DOM structure and interaction guidelines outlined in the [Tree View Design Pattern](https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-2/treeview-2a.html). Some of these resources were helpful for following the `tree` view interaction best practices. - [W3 Tree View](https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-2/treeview-2a.html) - [Deque Tree View Reference](https://dequeuniversity.com/library/aria/tabpanels-accordions/sf-tree-view) - [MDN Keyboard Widgets](https://developer.mozilla.org/en-US/docs/Web/Accessibility/Keyboard-navigable_JavaScript_widgets) - [MDN TabIndex Usage](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex#Tabindex_Accessibility) ## Usage The label can be a string or a React component. ```jsx ``` ## Contributors ✨ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

Tyler Krupicka

💻 📖 🎨 🚇 💡 ⚠️

Adam Dierkens

📖 💡 ⚠️ 💻

Andrew Lisowski

📖 💡 💻
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!