npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dazzer

v0.1.7

Published

Find why AI assistants get confused by your code and fix it. Get AI readiness score and actionable improvements.

Readme

Dazzer - AI Code Scanner

Why AI assistants get confused by your code and how to fix it.

Dazzer scans your repository and shows exactly what makes AI tools like Copilot and Cursor struggle with your codebase. Get a clear AI readiness score and actionable fixes.

Install & Run

# Install
npm install -g dazzer

# Scan your project
dazzer

# Scan specific folder
dazzer /path/to/your/project

What You Get

AI Readiness Score (0-100) - Higher scores mean AI assistants work better with your code

Issue List - Specific problems that confuse AI, with exact locations and fix suggestions

Categories:

  • Naming Issues - Inconsistent or unclear variable/function names
  • Missing Documentation - Functions without clear explanations
  • Complex Code - Deep nesting, long functions that AI can't follow
  • Hidden Logic - Implicit context and side effects AI misses
  • Type Confusion - Missing or unclear type information

Understanding Your Report

# Basic scan
dazzer .

# Save detailed report
dazzer . --output report.txt

# Get JSON for tools
dazzer . --json results.json

Score Ranges:

  • 80-100: Excellent AI compatibility
  • 60-79: Good, minor improvements needed
  • 40-59: Fair, several issues to address
  • 0-39: Poor, significant cleanup required

All Available Detectors

Code Quality Issues:

dazzer . --naming              # Inconsistent naming conventions
dazzer . --missing-docs        # Functions without documentation
dazzer . --long-functions      # Functions over 50 lines
dazzer . --deep-nesting        # Too many nested levels
dazzer . --magic-numbers       # Hardcoded numbers without explanation
dazzer . --type-hints          # Missing type annotations
dazzer . --duplicates          # Duplicate code blocks

AI Confusion Patterns:

dazzer . --cognitive-complexity    # Complex logic flow
dazzer . --ambiguous-returns      # Unclear return values
dazzer . --hidden-side-effects    # Functions that modify global state
dazzer . --implicit-context       # Code that relies on hidden assumptions
dazzer . --stringly-typed         # Using strings instead of proper types
dazzer . --dynamic-attr           # Dynamic attribute access
dazzer . --type-coercion          # Automatic type conversions

Architecture Problems:

dazzer . --temporal-coupling      # Order-dependent operations
dazzer . --cross-file            # Complex dependencies between files
dazzer . --mixed-abstraction     # Mixing high/low level concepts
dazzer . --config-spread         # Configuration scattered everywhere
dazzer . --overloaded-names      # Same names meaning different things

Code Structure Issues:

dazzer . --callback-hell         # Deeply nested callbacks
dazzer . --exception-swallowing  # Catching errors without handling
dazzer . --heavy-mocking         # Tests with excessive mocking
dazzer . --business-docs         # Missing business logic explanations

Fixing Priority Order

Start with these (biggest AI impact):

  1. Add function documentation - dazzer . --missing-docs
  2. Fix naming consistency - dazzer . --naming
  3. Break up long functions - dazzer . --long-functions
  4. Add type hints - dazzer . --type-hints
  5. Remove magic numbers - dazzer . --magic-numbers

Advanced Usage

# Comprehensive analysis
dazzer . --full-report

# Simple stakeholder report  
dazzer . --simple

# Focus on AI integration issues
dazzer . --ai-agent --json ai-report.json

# Generate Cursor IDE rules
dazzer . --cursor-rules

# Performance tuning
dazzer . --workers 8 --verbose

# Exclude directories
dazzer . --exclude-dirs tests node_modules build

Supported Languages

Python, JavaScript, TypeScript, React, Java, C/C++, C#, Go, Rust, Ruby, PHP, Swift, Kotlin, Dart, Shell, and 20+ more.

Requirements

  • Node.js 14+ (for npm install)
  • Python 3.8+ (automatically used)
  • Works on: macOS, Linux, Windows

Troubleshooting

"Python not found" - Install Python 3.8+ from python.org

"Permission denied" - Run sudo npm install -g dazzer (macOS/Linux)

Slow scanning - Use --exclude-dirs to skip large folders like node_modules

Empty results - Check you're in a code directory with supported file types

Support

Email: [email protected]
Issues: https://github.com/designmetric/dazzer/issues

Privacy

Dazzer collects anonymous usage statistics to improve the tool. No source code or personal information is ever collected. Disable with dazzer --disable-telemetry or set DAZZER_TELEMETRY=false.


Make your code AI-ready in minutes, not hours.