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

@ttsc/graph

v0.16.6

Published

Checker-resolved architecture graph over MCP for coding agents, backed by ttsc's in-process TypeScript-Go compiler.

Readme

@ttsc/graph

banner of @ttsc/graph

GitHub license NPM Version NPM Downloads Build Status Guide Documents Discord Badge

Gives your AI coding agent a map of your TypeScript codebase, over MCP, so it answers "how does this work?" without opening file after file.

Ask an agent like Claude Code or Codex about your project and it works file by file: open one, follow an import, open the next, until it has pieced the picture together by hand. Slow, token-hungry, and every relationship is a guess from reading text.

@ttsc/graph hands it the map up front: what calls what, what depends on what, where each piece lives. Drawn by the real TypeScript compiler, so it is exact, not skimmed.

On a public benchmark, an agent answered while reading zero files, cutting tokens by 77% to 86% and tool calls by 94% to 95% (see the benchmark).

You can also browse the whole map. This is TypeORM in 3D, colored by kind (live viewer):

The TypeORM code graph rendered in 3D

Setup

Install

npm install -D ttsc @ttsc/graph typescript@rc

@ttsc/graph reads the map from the program ttsc already type-checked, so install the two together.

Connect your agent

Add the server to your agent's MCP config, once.

For Claude Code, that is a .mcp.json in your project root:

{
  "mcpServers": {
    "ttsc-graph": {
      "command": "npx",
      "args": ["-y", "@ttsc/graph"]
    }
  }
}

Start your agent from your project root so the server finds your tsconfig.json. The agent queries the map on its own; you never call it by hand.

Browse it in 3D

Run this in your own project to open that 3D map in your browser, served from a local port:

npx @ttsc/graph view

Sponsors

Sponsors

Thanks for your support.

Your donation encourages ttsc development.

References

@ttsc/graph is inspired by codegraph, which first put a code graph in front of an agent over MCP. The benchmark here is a faithful port of codegraph's.

The difference is where the map comes from. codegraph parses the shape of your code and infers how the pieces connect, while @ttsc/graph asks the real TypeScript compiler, which has already resolved every import and reference, so the map is exact rather than inferred.