đź‘‹ Welcome! The toolkit's component library is in preview; this means the API is subject to change without notice. Keep an eye on Announcements or Releases for news on releases, or check out our Roadmap for priorities.
If you're interested in production use of this codebase, we'd love to chat! Please reach out at toolkit@button.is.
The Service Development Toolkit is a toolkit to bring best practices to data intake applications built with React.
The toolkit can be used to easily create progressively enhanced, accessible form-based applications that are themable and focused on minimizing resource size. It consists of a component library for themed, accessible, progressively enhanced components, and a form-builder application to help create progressively enhanced forms with good UI pricnciples. See below for live demonstrations:
We would like to thank the following awesome open-source projects that have been a big inspiration and help to this toolkit:
- react-jsonschema-form: The form builder tool to support progressive enhancement in single question per page forms relies heavily on the work in this package.
- WFP: The layout of their documentation in storybook was an inspiration for our component-library docs.
See the documentation below for getting setup in each tool:
- To contribute, fork this repository. See the developer guide for getting a local instance running.
- Create a branch off the develop branch, named after the issue number you are working on, e.g
feat/12
. - When ready to commit your changes, run
make commit
from the root directory. If you have installed pre-commit, this will check your changes are linted correctly. - From the root, run
yarn test:jest
to ensure tests are passing. - Create a pull request to the develop branch.
To make it easier to accept your pull request, add tests where possible to ensure code is working as expected. Thank you for your contributions!