Health-Check & Audit Tool for Nuxt Modules
Find out which modules are well-maintained, Nuxt 4 compatible, and which ones to avoid.
Badge • Features • Scoring • Setup • Tech Stack • Support
Show your module's health score in your README:
[](https://nuxt.care/?search=YOUR-MODULE)Replace YOUR-MODULE with your module name as shown on nuxt.care (e.g., icon, image).
For multiple params don't forget to encode your URL like
[](https://nuxt.care/?search=ui)
Example:
- Health Scoring - Transparent 0-100 score based on reliable data
- Security Audit - Vulnerability detection via OSV database
- Nuxt 4 Compatibility - Check if modules are ready for Nuxt 4
- Maintenance Status - See pending commits, release freshness, CI status
- Smart Filters - Filter by category, type, compatibility, quality metrics
- Favorites - Track modules you care about
- Health Badge - Add a quality badge to your module's README
- Auto-Sync - Automatic data refresh every 8 hours
nuxt.care calculates a Risk/Quality Score from 0-100. This is not a popularity contest - we focus on reliability, maintenance, and compatibility.
- 85% of the score comes from reliable, verifiable data (tests, types, CI, vulnerabilities)
- 15% comes from weaker signals (Nuxt 4 compatibility indicators)
- Downloads and stars are shown but don't affect the score - a solo dev can build great modules
| Category | Points | How it's calculated |
|---|---|---|
| Security | 15 | No known vulnerabilities = 15 points |
| Trust | 5 | Official module = 5, Community = 3, 3rd-party = 0 |
| Quality | 30 | Tests (12) + TypeScript (10) + License (5) + CI passing (3) |
| Maintenance | 35 | Publish freshness (20) + All changes released (15) |
| Nuxt 4 | 15 | Multiple compatibility signals = 15, one signal = 10 |
Total: 100 points maximum
| Check | Points | What we look for |
|---|---|---|
| Has tests | 12 | test script in package.json |
| TypeScript | 10 | types/typings field or typescript in devDeps |
| License | 5 | License file in repo |
| CI passing | 3 | GitHub Actions with successful last run |
| Check | Points | Criteria |
|---|---|---|
| Freshness | 0-20 | |
| Published < 90 days | 20 | Very active |
| Published < 1 year | 12 | Active |
| Published > 1 year | 5 | Stale (but see "Stable & Done") |
| Release Status | 0-15 | |
| All changes released | 15 | No unreleased commits since last tag |
| Pending but active | 8 | Has pending commits, but recent activity |
| Pending commits | 3 | Has unreleased changes |
| Abandoned | 0 | Pending commits + no activity > 1 year |
We check multiple sources for Nuxt 4 compatibility:
- Nuxt API compatibility string (
>=3.x <5) - GitHub topics (
nuxt4,nuxt-4) - npm keywords
- Release notes mentioning Nuxt 4
| Signals found | Points |
|---|---|
| 2+ signals | 15 (confirmed) |
| 1 signal | 10 (partial) |
| Official module, 0 signals | 5 (benefit of doubt) |
| 0 signals | 0 (unconfirmed) |
These subtract from your score and can push it below zero:
| Issue | Penalty | Why |
|---|---|---|
| Deprecated | -50 | Package author says don't use it |
| Critical vulnerabilities | -40 | Known security issues |
| Archived | -30 | No longer maintained |
| High vulnerabilities | -20 | Serious security concerns |
Some modules are "done" - they work perfectly and don't need updates. Old doesn't mean bad!
A module gets the Stable & Done bonus (15 instead of 5 for freshness) if:
- Published > 1 year ago, but:
- All changes released (no pending commits)
- < 10 open issues
- No known vulnerabilities
- CI passing (or no CI)
| Score | Meaning |
|---|---|
| 90-100 | Excellent - well maintained, high quality |
| 70-89 | Good - safe to use, minor concerns |
| 50-69 | Caution - review the signals before using |
| < 50 | Warning - significant issues, consider alternatives |
These are shown as info but don't affect scoring:
- Downloads - Popular ≠ Good
- Stars - GitHub stars don't mean quality
- Contributors - One person can build great things
# Clone
git clone https://github.com/Flo0806/nuxt.care.git
cd nuxt.care
# Install
pnpm install
# Configure
cp .env.example .env
# Add your GitHub token: NUXT_GITHUB_TOKEN=ghp_xxx
# Run
pnpm dev| Variable | Description | Required |
|---|---|---|
NUXT_GITHUB_TOKEN |
GitHub PAT for API access (module sync) | Yes |
NUXT_OAUTH_GITHUB_CLIENT_ID |
GitHub OAuth App Client ID | For login |
NUXT_OAUTH_GITHUB_CLIENT_SECRET |
GitHub OAuth App Client Secret | For login |
NUXT_SESSION_PASSWORD |
Session encryption key (min 32 chars) | For login |
NUXT_SYNC_LIMIT |
Limit modules for dev (0 = all) | No |
To enable "Login with GitHub" and starring:
- Go to GitHub Developer Settings
- Create a new OAuth App
- Set callback URL to
http://localhost:3000/auth/github(dev) or your domain - Copy Client ID and Client Secret to
.env
- Nuxt 4 - Vue framework
- NuxtHub - KV storage
- Nuxt UI v3 - Component library
- Tailwind CSS v4 - Styling
- Nuxt Modules API - Module list & metadata
- npm Registry - Package info, publish dates
- GitHub API - Repo stats, CI status, releases
- OSV Database - Known vulnerabilities
nuxt.care is free and open source. If it helps you make better decisions about your Nuxt modules, consider supporting development:
MIT