{"id":14643,"library":"jest-spin-reporter","title":"Jest Spin Reporter","description":"jest-spin-reporter is a straightforward Jest test reporter that displays a progress spinner during test execution. Its primary function is to provide visual feedback for ongoing test suites, enhancing the developer experience by showing that tests are actively running, unlike default reporters that might appear stuck during long runs. The current stable version is 2.0.0, released in August 2019. The package has an infrequent release cadence, with no further updates since 2.0.0, suggesting it is in maintenance mode. Key differentiators include its minimalistic design focused solely on a spinner-based progress indicator, offering a clear visual cue without additional detailed logging or complex reporting features. It contrasts with more verbose reporters by prioritizing simplicity and immediate 'active' status feedback, making it ideal for quick visual status checks.","status":"maintenance","version":"2.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/kwonoj/jest-spin-reporter","tags":["javascript","Jest","Reporter","Spinner","Progress"],"install":[{"cmd":"npm install jest-spin-reporter","lang":"bash","label":"npm"},{"cmd":"yarn add jest-spin-reporter","lang":"bash","label":"yarn"},{"cmd":"pnpm add jest-spin-reporter","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"This package is a Jest reporter and is primarily consumed by configuring it in Jest's `reporters` array. Direct programmatic import of the reporter module is generally not required for standard usage, as Jest handles its instantiation.","wrong":"import JestSpinReporter from 'jest-spin-reporter'; // Not the primary or documented usage pattern\nconst JestSpinReporter = require('jest-spin-reporter'); // Not the primary or documented usage pattern","symbol":"Reporter Configuration","correct":"/* In your jest.config.js or package.json */\n{\n  \"reporters\": [\n    \"jest-spin-reporter\"\n  ]\n}"}],"quickstart":{"code":"npm install --save-dev jest-spin-reporter\n\n// jest.config.js (or 'jest' field in package.json)\nmodule.exports = {\n  // ... other Jest configurations\n  reporters: [\n    \"default\", // It's often beneficial to keep the default reporter for summary output\n    \"jest-spin-reporter\"\n  ]\n};\n\n// Example of a test file (e.g., my-test.spec.js)\ndescribe('My test suite', () => {\n  test('should pass quickly', () => {\n    expect(true).toBe(true);\n  });\n\n  test('should simulate a longer test to observe spinner', async () => {\n    // Simulate asynchronous work that takes time\n    await new Promise(resolve => setTimeout(resolve, 800));\n    expect(true).toBe(true);\n  });\n\n  test('another quick test', () => {\n    expect('hello').toBe('hello');\n  });\n});\n","lang":"javascript","description":"Demonstrates how to install `jest-spin-reporter` and configure Jest to use it, including a simple test setup to observe the spinner during a simulated long test."},"warnings":[{"fix":"Ensure your Node.js environment is updated to a modern version. For Node.js versions prior to what was considered 'latest' in August 2019, you may need to remain on jest-spin-reporter 1.x or upgrade your Node.js runtime.","message":"Version 2.0.0 introduced a breaking change by updating the Node.js target, explicitly stating support for 'latest node only'. This means it may be incompatible with older Node.js environments.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"To retain the standard Jest summary, explicitly include the 'default' reporter in your `reporters` array alongside 'jest-spin-reporter', e.g., `\"reporters\": [\"default\", \"jest-spin-reporter\"]`.","message":"By default, adding 'jest-spin-reporter' to your `reporters` array without also including 'default' will remove Jest's default test summary output. This can lead to a lack of detailed pass/fail information at the end of a test run.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Test your reporter configuration thoroughly in your CI/CD and local environments. Consider the order of reporters in the array, as some reporters might overwrite or interfere with the output of others. Prioritize reporters that provide essential information and use the spinner reporter for visual feedback.","message":"When combining `jest-spin-reporter` with other Jest reporters, there's a potential for conflicting or messy terminal output, especially if other reporters also use interactive elements or extensive logging to stdout.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-19T00:00:00.000Z","next_check":"2026-07-18T00:00:00.000Z","problems":[{"fix":"Run `npm install --save-dev jest-spin-reporter` to ensure the package is installed. Verify that the name 'jest-spin-reporter' is spelled correctly in your Jest configuration file.","cause":"The package 'jest-spin-reporter' is not installed or Jest cannot resolve its path.","error":"Error: Cannot find module 'jest-spin-reporter' from 'jest.config.js'"},{"fix":"Upgrade your Node.js runtime to a modern version. If the issue persists, try downgrading `jest-spin-reporter` to a 1.x version, or temporarily remove it from your Jest config to isolate the problem.","cause":"Using `jest-spin-reporter` v2.0.0 or higher with an older, unsupported Node.js version, or an unhandled error within the reporter itself.","error":"Jest exited with unexpected code: 1 - Likely a Node.js incompatibility or uncaught reporter error."}],"ecosystem":"npm"}