Socket
Socket
Sign inDemoInstall

downshift-hooks

Package Overview
Dependencies
14
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    downshift-hooks

A set of hooks to build simple, flexible, WAI-ARIA compliant React dropdown components.


Version published
Weekly downloads
156
increased by194.34%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

downshift-hooks

A set of hooks to build simple, flexible, WAI-ARIA compliant React dropdown components.

Build Status

The problem

You need an autocomplete/dropdown/select experience in your application and you want it to be accessible. You also want it to be simple and flexible to account for your use cases.

This solution

This set of hooks is inspired by downshift and aims to provide functionality and accessibility to dropdown and combobox components.

At the moment, the first hook developed is useSelect() and it means to implement the select dropdown ARIA design pattern. Another future 3 new hooks should be implemented: useAutocomplete(), useMultipleSelect() and useMultipleAutocomplete(). Having one hook for each different widget allows the user to write little additional stateful logic (hopefully none) in order to make them accessible and functional. That being said, the hooks still follow the vanilla Downshift principle of being completely customisable.

The API will be as similar as possible for each of these hooks and will follow the one already present in Downshift. Differences will appear only when the design pattern requires for them to do so.

Installation

This module is distributed via npm which is bundled with node and should be installed as one of your project's dependencies:

npm install --save downshift-hooks

Hooks

useSelect()

For a select dropdown click here.

Roadmap and contributions

Next steps:

  • complete testing for the useSelect() hook.
  • create useAutocomplete() hook (the old Downshift default component) for the combobox design pattern.
  • create multiple versions for useSelect() and useAutocomplete().

Share your opinion about having separate hooks for each component case. Help out with ideas, feature prioritisation, code quality, documentation and anything else by creating Issues in this repositiory. Much appreciated!

LICENSE

MIT

FAQs

Last updated on 09 Aug 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc