Skip to content
/ bento Public

Bento is a component library built to support our GoDaddy design system. It is a collection of reusable components (i.e., primitives) that can be used to build more complex components.

License

godaddy/bento

🍱 Bento

CI License: MIT TypeScript Node Coverage PRs Welcome Changesets

A component library of accessibility primitives for building React design systems.

Bento provides unstyled, accessible building blocks built on React Aria that you can use to create your own component library or design system. It embodies the "Primitives" concept - fundamental, highly customizable components with no business logic.

📦 Getting Started

See individual package READMEs in packages/ for installation and usage instructions.

📖 Documentation

Our documentation is powered by Storybook and can be started by running:

npm run storybook

From inside of the apps/docs folder. Storybook is configured to automatically scan our packages/** folder for .mdx and .stories.{ts|tsx} files. This allows our documentation to be co-located with the actual code.

The examples that are part of the Storybook documentation should be placed in the examples folder as individual component exports. This allows us to re-use the examples as part of our testing strategy, as well as run tests against our examples folder to ensure our documentation and examples are always up to date and working as expected.

🛠️ Development

Prerequisites

  • Node.js >= 23
  • npm >= 10

Setup

# Clone the repository
git clone https://github.com/godaddy/bento.git
cd bento

# Install dependencies
npm install

# Build all packages
npm run build

# Run tests
npm run test

📝 Conventional Commits

The repo is configured only to accept conventional commits as commit syntax. This is enforced using @commitlint.

📦 Changesets

When contributing changes to packages, you must include a changeset:

npm run changeset

Select the affected packages, choose the version bump type (patch/minor/major), and write a description using conventional commit syntax (e.g., "fix: resolve issue", "feat: add feature", "docs: update readme").

Note: Documentation changes in packages should use patch version bumps with a docs: prefix, as they improve the published package for consumers and AI tooling.

The Changeset Bot will automatically comment on pull requests to remind you if a changeset is needed.

🤝 Contributing

We welcome contributions from the community! Please read our Contributing Guide to get started.

📄 License

MIT License - Copyright (c) 2025 GoDaddy Operating Company, LLC.

See LICENSE.md for details.

About

Bento is a component library built to support our GoDaddy design system. It is a collection of reusable components (i.e., primitives) that can be used to build more complex components.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 13

Languages