A plugin is native code you did not write, updated on someone else's schedule. Five signals predict whether it will survive your next upgrade: a release since the last Capacitor 243,123 major, a @capacitor/core peer range that includes your version, recent commits, a manageable issue count, and real use. npm 2,036 and GitHub 29 expose all five:
// Usage: node health.mjs <npm-package> <github-owner/repo>
const [, , pkg, repo] = process.argv;
const get = async (url) => (await fetch(url)).json();
const meta = await get(`https://registry.npmjs.org/${pkg.replace('/', '%2F')}`);
const latest = meta['dist-tags'].latest;
const core = meta.versions[latest].peerDependencies?.['@capacitor/core'] ?? 'none';
const week = await get(`https://api.npmjs.org/downloads/point/last-week/${pkg}`);
const gh = await get(`https://api.github.com/repos/${repo}`);
console.log(`${pkg}@${latest}, published ${meta.time[latest].slice(0, 10)}`);
console.log(` @capacitor/core peer: ${core} downloads last week: ${week.downloads}`);
const issues = gh.open_issues_count;
console.log(` ${repo}: ${gh.stargazers_count} stars, ${issues} open issues and PRs,`
+ ` last push ${gh.pushed_at.slice(0, 10)}, license ${gh.license?.spdx_id}`
+ (gh.archived ? ', ARCHIVED' : ''));Two barcode scanners and the keep-awake plugin of Installing Community Plugins, checked on 24 September 2026:
@capacitor-community/keep-awake@8.0.1, published 2026-04-16
@capacitor/core peer: >=8.0.0 downloads last week: 77617
capacitor-community/keep-awake: 174 stars, 10 open issues and PRs, last push 2026-05-27,
license MIT
@capacitor-community/barcode-scanner@4.0.1, published 2023-05-08
@capacitor/core peer: ^5.0.0 downloads last week: 6798
capacitor-community/barcode-scanner: 444 stars, 50 open issues and PRs, last push
2024-10-10, license MIT, ARCHIVED
@capacitor-mlkit/barcode-scanning@8.2.1, published 2026-09-10
@capacitor/core peer: >=8.0.0 downloads last week: 102636
capawesome-team/capacitor-mlkit: 216 stars, 14 open issues and PRs, last push 2026-09-18,
license Apache-2.0The archived scanner has the most stars and thousands of weekly downloads, but it stops at Capacitor 5, so npm refuses to install it into a Capacitor 8 project with an ERESOLVE error unless forced. Stars measure history; the peer range and the last release measure the present. Also skim the plugin's android/ folder for the permissions and SDKs it brings, and remember that an MIT plugin that goes quiet can be forked or folded into a local plugin (Custom Plugins).