Meta is transferring its popular open-source JavaScript testing framework, Jest, to the OpenJS Foundation.
Jest is one of Meta's top open-source projects and has proven a popular tool for testing JavaScript projects, particularly those built in React, another popular JavaScript library created at Facebook, which open-sourced it in 2013.
Facebook introduced Jest as an open-source project in 2014, but it was created in 2011 when Facebook's chat feature was rewritten in JavaScript.
SEE: Software skills will get you far, but you don't have to be a coder to make it big in tech
In 2017, Facebook bowed to concerns over licensing Jest and React under the BSD+Patent license and moved them to an MIT license. Jest downloads from JavaScript package repository npm exceed 16 million a week, outnumbering React by 2 million a week.
Rick Hanlon, a frontend engineer on React core at Meta and Jest core contributor, notes in a blogpost that Jest is the most used testing framework in the JavaScript ecosystem. It's used by companies of all sizes, including Amazon, Google, Microsoft, and Stripe.
Hanlon says moving ownership to the OpenJS Foundation was an "exciting and natural next step" for Jest as it matures as an open-source project.
"This move does not change how Jest is developed or released, and it does not directly affect developers using Jest to test their applications," he adds.
Passing ownership to the OpenJS Foundation follows questions raised in February by Jest users about the project on Hacker News and Reddit. Some noticed that no one from Facebook/Meta had contributed to Jest for several years.
After Facebook open-sourced Jest, Facebook employee Christoph Nakazawa in 2016 created a dedicated team for Jest that helped deliver features like "watch mode" and "snapshot testing".
After 2018, the open-source community delivered features like "jest-each, inline snapshots, interactive snapshot mode, watch mode plugins, better defaults, ESM support, and more", according to Halon. (ESM refers to ECMAScript modules, the format to package JavaScript code for reuse in Node.js.)
"Today, Jest is primarily maintained by a group of core contributors external to Meta led by Simen Bekkhus. In fact, since 2018, almost all the contributions made to Jest have been made by open source contributors outside of Meta. Because the project is maintained by the community, we feel it's best for the community to take over ownership of the project," writes Hanlon.
Bekkhus recently announced Jest version 28 but also explained in a comment to a pull request for Jest on GitHub in February that Facebook has had limited involvement for some time. "Nobody at FB (Meta?) has worked on Jest for years at this point, beyond a few PRs here and there like any other open source contributor," he wrote.
But Bekker believes moving Jest to the OpenJS Foundation, where it can be led by the community, was a more natural fit for the project.
"We have been a community-led project for quite some time. We believe in community-led development, and continually strengthening our community, and joining the OpenJS Foundation will help us strengthen and broaden our community," Bekkhus is quoted in the OpenJS Foundation press release. "I see this as a very positive change and a way for the Jest community to flourish."
SEE: 'I used to run a pub, now I work in tech'. Career changers on why they made the switch to IT
Jest joins other key JavaScript projects managed by the OpenJS Foundation, including jQuery, Node.js, Electron, AMP, and webpack. The foundation is supported by corporate and end-user members, including GoDaddy, Google, IBM, Intel, Joyent, and Microsoft.
Hanlon says the foundation supports the JavaScript ecosystem by "acting as a neutral organization to host and sustain projects and to collaboratively fund activities for the benefit of the community at large."
The Jest core team now includes Bekkhus, Nakazawa, Orta Therox, Pierzcha?a, and Hanlon. Meta will also transfer the Jest domain, repo, website, and other assets to OpenJS.
"We will be publishing a project charter and creating new governance policies that will document the process for gaining commit access, as well as our leadership selection process," notes Hanlon.