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

@textmode/tsconfig

v0.2.2

Published

<div align="center">

Readme

@textmode/tsconfig

| TypeScript Node.js | docs Discord | ko-fi GitHub-sponsors | | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

@textmode/tsconfig provides shared TypeScript policy and task orchestration for textmode.js libraries and Node.js tooling. It owns the strictness presets, the declaration-emission policy, and the textmode-types command that runs check, build, verify, and show-config programs.

Use it to keep every package on the same TypeScript policy while letting each project own its authoring scope and paths.

Features

  • Capability presets - Environment-independent strictness for browsers, published libraries, Node, and Node tooling.
  • Command-owned programs - check, build, verify, and show-config own their TypeScript task scopes.
  • Declaration policy - Production declarations emit from src to dist/types with consistent settings and omit TypeDoc-only category metadata.
  • Consumer verification - verify resolves every export and legal dependency back-reference from an isolated consumer with skipLibCheck: false.
  • Optional @internal stripping - Opt in per package without another config file.

Installation

npm install -D @textmode/tsconfig typescript

Usage

A library owns one authoring config containing its complete editor and test scope:

{
	"extends": "@textmode/tsconfig/browser-library.json",
	"include": ["src", "tests", "vite.config.ts", "vitest.config.ts"]
}

Task-specific programs are owned by the command:

textmode-types check
textmode-types build
textmode-types verify
textmode-types show-config

Every command accepts --cwd <directory> and --project <file> to select the project root and TypeScript config.

  • check rejects authored TypeScript files that are not claimed by the local config, then runs a no-emit project check.
  • build emits production declarations from src to dist/types, excludes co-located tests, disables declaration maps and ambient type packages, and removes @category and @categoryDescription blocks from emitted JSDoc. Source comments are unchanged, so TypeDoc continues to use that metadata when generating API documentation; other declaration documentation is preserved.
  • verify resolves every package export from an isolated consumer with skipLibCheck: false, including dependencies that reference the package or one of its exported subpaths.
  • show-config reports the complete authoring and declaration programs.

The command uses the project's installed TypeScript compiler. Paths and aliases remain local project data; declaration policy and task scopes are shared.

Packages that intentionally annotate implementation exports with @internal can opt into stripping those declarations without another config file:

{
	"textmodeTypes": {
		"stripInternal": true
	}
}

Internal declarations are preserved by default, matching TypeScript's default and avoiding accidental API removal in packages that historically emitted them.

Related packages

@textmode/tsconfig is the foundation of the tooling stack and is consumed by the following textmode-tooling packages:

| Package | Relationship | | --------------------------------------- | --------------------------------------------------------------------- | | @textmode/docs | TypeDoc reads the consumer tsconfig | | @textmode/build | Library builds and tests compile against the shared TypeScript policy |

Presets

| Preset | Use | | ----------------------------------------- | ----------------------------------------- | | @textmode/tsconfig/strict.json | Environment-independent strictness | | @textmode/tsconfig/browser.json | Browser and bundler projects | | @textmode/tsconfig/browser-library.json | Published textmode.js browser libraries | | @textmode/tsconfig/node.json | TypeScript running under Node | | @textmode/tsconfig/node-tooling.json | Checked JavaScript and TypeScript tooling |

base.json, typecheck.json, build.json, and dist.json remain available as aliases and should not be used by new projects.

License

The @textmode/tsconfig package is licensed under the CC0 1.0 Universal.