slidevjs/slidev code health: no function data returned for commit 36f8a89

A hotspots scan of slidevjs/slidev at commit 36f8a89 returned zero functions, indicating a configuration or scoping issue rather than a clean bill of health.

Stephen Collins ·
oss typescript refactoring code-health

Key Points

What does an empty hotspots scan result mean for slidev?

An empty result — zero total functions, no hotspots, no band data — means the analysis tool did not find any functions to score, most likely because the source paths were not correctly configured. It does not mean the codebase has no structural risk. Fixing the scan configuration and re-running against the correct package directories is the immediate next step.

How do I reduce cyclomatic complexity in TypeScript?

Extract deeply nested conditional branches into named helper functions, and replace multi-branch switch or if-else chains with lookup tables or strategy objects to reduce the number of independent execution paths through a single function.

Is slidev actively maintained?

The current scan at commit 36f8a89 returned no function-level activity data, so no conclusion about maintenance activity can be drawn from this dataset. Re-running with a correct configuration will reveal which functions carry recent commit activity and which represent dormant structural debt.

How do I reproduce this analysis?

Install the hotspots CLI, point it at the slidevjs/slidev repository at commit 36f8a89, ensure your `.hotspotsrc.json` includes the correct TypeScript source globs, and run `hotspots analyze` to generate the scored function list.

What does activity-weighted risk mean?

Complexity × recent commit frequency — functions that are hard to understand AND actively changing are the highest priority for refactoring.

The hotspots scan of slidevjs/slidev at commit 36f8a89 returned zero total functions and no ranked hotspots — a result that signals a tooling or configuration gap, not an absence of structural risk. Slidev is a TypeScript-based presentation framework with a monorepo structure spanning multiple packages; a properly scoped scan would be expected to surface functions across its compiler, parser, and server layers. Before drawing any conclusions about code health, the scan configuration needs to be verified to ensure the correct source paths are being targeted.

Scan Result

No functions were returned by this run, so there are no activity-weighted hotspots to rank for this snapshot. Treat this as a failed or under-scoped analysis run: the next useful action is to re-run the scan with explicit TypeScript source globs rather than interpreting the empty table as a low-risk codebase.

Large Repo Analysis

slidev is a large repository. To stay within memory constraints, this analysis used hybrid touch mode: structural complexity — CC, ND, FO — is measured precisely for every function. Git activity is tracked at the function level (via git log -L) only for files with 5 or more commits in the last 30 days; other files use a file-level approximation. Rankings therefore surface functions that are both structurally complex and in the most actively-changing parts of the codebase. Dormant code with high structural complexity will rank lower than it would under a full per-function analysis — to surface it, run hotspots analyze . --per-function-touches on a machine with sufficient memory.

Codemod / Tooling Files in Results

No functions were returned by the scan, so no vendored or third-party files can be identified or excluded at this time. Once the scan is producing results, common exclusion candidates in a Vite/Node monorepo like slidev include compiled output and bundled assets. A starting exclude pattern would be { "exclude": ["**/dist/**", "**/node_modules/**", "**/*.min.js"] } added to .hotspotsrc.json in the repository root.

Key Takeaways

  • A scan returning zero functions at commit 36f8a89 means the hotspots CLI did not locate any analyzable TypeScript functions — verify that the include paths in .hotspotsrc.json point to the correct source directories (e.g., packages/*/src).
  • Before investing in refactoring work, re-run the scan with explicit source globs to confirm coverage across slidev’s core packages such as the parser, compiler, and dev-server layers.
  • Once a valid scan is produced, prioritize any functions that appear in the ‘fire’ quadrant — those combining high cyclomatic complexity with high recent commit frequency represent live regression risk, not just backlog cleanup.

Reproduce This Analysis

git clone https://github.com/slidevjs/slidev
cd slidev
git checkout 36f8a896618cc243be82577b77658d7ed1b122a5
hotspots analyze . --mode snapshot --explain-patterns --force --hybrid-touches 5

To run the same analysis on your own codebase, run hotspots analyze . --mode snapshot in any local git repo — no configuration required.

Hotspots highlights structural and activity risk — not “bad code.” Findings are a prioritization aid, not a bug predictor. Editorial policy →

Run this on your own codebase

Hotspots runs locally in under a minute — no account, no data leaves your machine.

macOS
$ brew install Stephen-Collins-tech/tap/hotspots
Linux / cargo
$ cargo install hotspots-cli
Run in any repo
$ hotspots analyze .
★ Star on GitHub