Is karma still maintained?
No — karma stopped being maintained around April 2023. karma's own maintainers named vitest as the successor.
- Status
- No longer maintained
- Last maintained
- April 2023
- Use instead
vitest— on npm- Succession
- Successor named by the maintainers
- Drop-in
- no — expect code changes
- Confidence
- medium
What should I use instead of karma?
karma's own maintainers named vitest as the successor. vitest is not a drop-in replacement, so expect to change call sites.
How to migrate from karma to vitest
New Angular CLI projects already use Vitest with jsdom, and the Angular testing guide documents migrating an existing Karma project; for plain browser unit tests outside Angular, @web/test-runner is the closest structural match to a Karma config.
Why karma is on this list
The Karma maintainers added a deprecation notice to the README in April 2023, writing that new test runners offer more performant alternatives and that Karma no longer provides clear unique value; critical security issues are still triaged. The README names Web Test Runner and jasmine-browser-runner as direct browser-based alternatives and Jest and Vitest as Node-based ones. Angular, by far the largest Karma user base, now uses Vitest as the default test runner for new CLI projects.
The succession is well supported, but it is not the only defensible choice.
karma alternatives
Beyond the primary recommendation, these are credible for karma's use case:
@web/test-runner— view on npmjasmine-browser-runner— view on npmjest— view on npm@playwright/test— view on npm
Check your own project for karma
npx dead-deps --all --min-state unmaintained
Run that in the directory holding your lockfile. If karma is anywhere in your tree — a direct dependency or buried under something else — it appears in the report with this verdict, this successor and the same evidence links, alongside anything else that has stopped moving. Nothing is uploaded; the scan reads your lockfile locally and queries public registry metadata.
Exit code 1 means something was flagged, which makes npx dead-deps --min-state deprecated usable as a CI gate. See how verdicts are produced.
Evidence
Every claim on this page traces to a primary source. Check them:
- Karma README: "Karma is deprecated and is not accepting new features or general bug fixes"github.com
- Angular testing guide: new CLI projects use Vitest by defaultangular.dev
- Angular blog: Moving Angular CLI to Jest and Web Test Runnerblog.angular.dev
Packages related to karma
- jasmine-nodeSuccessor named by the maintainers: jasmine · unmaintained since May 2019
- nodeunitNo direct successor · unmaintained since July 2018
- geminiSuccessor named by the maintainers: testplane · unmaintained since November 2019
- enzymeReplacement project: @testing-library/react · unmaintained since December 2019
- protractorReplacement project: @playwright/test · unmaintained since April 2021
See the full index of covered packages, or read the methodology for how a verdict is reached and why a quiet package is not a dead one.