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

slnmap-ts

v0.3.0

Published

Frontend HTTP call-site extractor for slnmap. Walks a TypeScript/React project with the TS Compiler API and emits a JSON artifact of resolved and unresolved call sites for slnmap's `analyze-ts` verb to ingest.

Readme

slnmap-ts

Frontend HTTP call-site extractor for slnmap (source). Walks a TypeScript/React project with the TypeScript Compiler API and emits a JSON artifact of resolved and unresolved HTTP call sites. slnmap's .NET CLI (the analyze-ts verb) ingests that artifact into the same code-graph database the rest of slnmap uses — this package never touches SQLite itself.

Usage

npx slnmap-ts extract <project-root> --tsconfig <path/to/tsconfig.json> --out <file>.json
  • <project-root> — the frontend project's root directory.
  • --tsconfig — path to the tsconfig.json to load (defaults to <project-root>/tsconfig.json).
  • --out — where to write the JSON artifact.

Requirements

Node.js 18+. TypeScript is bundled as a pinned dependency — the target project's own installed TypeScript version (if any) is never used, so slnmap-ts behaves identically regardless of what TypeScript release the analyzed project depends on.

Known limitations

Validated against a pre-publish field trial across several real and public codebases before this version shipped. One gap from that trial is still open and worth calling out here directly:

  • Monorepo / TypeScript project-references tsconfigs are untested. Every project exercised so far (in development and in the field trial) uses a single, flat tsconfig.json. A references-based setup (Nx, Turborepo, and similar monorepo tooling) has not been run through slnmap-ts at all — it may work (the loader uses ts.parseJsonConfigFileContent, which understands references), but this is not yet a verified claim. Treat results on such a project as unverified until confirmed.

Plain JavaScript projects (no TypeScript at all) work once a tsconfig.json with "allowJs": true exists — this has been verified against a real, unmodified public codebase — but slnmap-ts does not create one for you; see the analyze-ts CLI's error message if none is found.

Development

npm install
npm run build   # compiles src/ -> dist/
npm test        # compiles src/+test/ -> dist-test/, runs with node --test