![](https://images.opencollective.com/chaijs/e50916d/background.png)
Chai
Chai is a BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.
![](https://opencollective.com/static/images/collective-navigation/CollectiveNavbarIconContribute.png)
Contribute
Become a financial contributor.
Financial Contributions
Top financial contributors
Organizations
$5,200 USD since Dec 2018
$2,683 USD since May 2018
$681.44 USD since Oct 2023
$500 USD since Feb 2022
$420 USD since Mar 2021
$326.8 USD since Oct 2021
$250 USD since Feb 2018
$158 USD since Mar 2018
$104 USD since May 2020
$60 USD since Dec 2018
Individuals
$271 USD since Nov 2018
$164 USD since Dec 2017
$96 USD since May 2017
$64 USD since Sep 2018
$60 USD since Jun 2016
$50 USD since Nov 2016
$50 USD since Nov 2016
$40 USD since Sep 2017
$30 USD since Apr 2017
$20 USD since Nov 2017
Chai is all of us
Our contributors 48
Thank you for supporting Chai.
Jake Luer
Jérémie Astori
Lucas Fernand...
Grant Snodgrass
keithamus
Principal Fin...
$5,200 USD
Airbnb
Individual Backers
$2,683 USD
THANKS.DEV
$681 USD
HTTP Toolkit
$500 USD
Shiftmove
Individual Backers
$420 USD
Sentry
$327 USD
David Passarelli
Individual Backers
$271 USD
![](https://opencollective.com/static/images/collective-navigation/CollectiveNavbarIconBudget.png)
Budget
Transparent and open finances.
Credit from THANKS.DEV to Chai •
Credit from JeongHoon Byun to Chai •
$677.80 USD
$10,010.75 USD
$9,332.95 USD
$1,746.30 USD
![](https://opencollective.com/static/images/collective-navigation/CollectiveNavbarIconAbout.png)
About
Chai has several interfaces that allow the developer to choose the most comfortable. The chain-capable BDD styles provide an expressive language & readable style, while the TDD assert style provides a more classical feel.
Plugins extend Chai's assertions to new contexts such as vendor integration & object construction. Developers can build their own plugins to share with community or use the plugin pattern to DRY up existing tests.