Caution
Jet is no longer actively maintained:
Jet has always been primarily focused on serving Invertase as test scaffolding for react-native-firebase. In a world where the React Native Javascript bundle could execute in a local environment allowing for transparent access to a module's execution context the idea of Jet was incredible. In a Fabric / New Architecture world where the execution context must be on-device, it makes less sense.
Invertase is in the progress of migrating to more widely-used industry standard tools (e.g. Appium) for test scaffolding so Jet no longer serves it's intended purpose and is now archived.
Jet lets you test your React Native Module APIs in JS mock free and native testing code free - ideal for testing React Native modules e2e.
Features:
- ⏩ Test with JavaScript - write your native module tests in javascript and fully e2e test them.
- 💯 Coverage - get full code coverage output for your React Native module's JS API with built in coverage support (
--coverage).
Latest supported React Native version: ^0.76
Add the current version of jet as a development dependency using your package manager of choice, for example yarn:
yarn add --dev jetThese docs are still TODO, for now see example, in particular:
Configuring Jet and targets:
Adding the test UI and your tests:
Configuring coverage instrumentation:
jet --target=macosExample:
const proc = require('node:child_process');
module.exports = {
config: {
// Global config overrides/defaults...
},
targets: {
// Use any key name to specify a new 'target' (--target=<key>)
// [key: string]: { ... }
macos: {
// --target=macos
config: {
// Per target config overrides...
// These will override in order of:
// ...cliFlags
// ...globalConfig
// ...targetConfig
},
/**
* Use this to run builds, start the application etc.
*/
async before(config) {
proc.spawnSync('npx', ['react-native', 'run-macos']);
return config;
},
/**
* Use this for cleanup & teardown.
*/
async after(config) {
console.log('After');
},
},
},
};For now please see the open issues tracking work that needs doing discussions and thoughts on these issues and on Jet will help us mature the project into a useful tool.
These projects use Jet to test their modules:
- React Native Firebase: 🔥 A well tested feature rich modular Firebase implementation for React Native. Supports both iOS & Android platforms for over 15 Firebase services.
Submit a PR to add your project here.

