# Install dtsroll with Homebrew

CLI tool for bundling TypeScript declaration files. Version 1.8.2 via Homebrew; verified 2026-05-04.

## Install

```sh
sudo av install brew:dtsroll
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install dtsroll
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:dtsroll
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/dtsroll>
- **Version:** 1.8.2
- **Source summary:** CLI tool for bundling TypeScript declaration files
- **Homepage:** <https://github.com/privatenumber/dtsroll>
- **Repository:** <https://github.com/privatenumber/dtsroll>
- **License:** MIT
- **Source archive:** <https://registry.npmjs.org/dtsroll/-/dtsroll-1.8.2.tgz>
- **Last updated:** 2026-05-04T21:07:18Z
- **Generated:** 2026-08-04T22:13:35+00:00

## Executables

- dtsroll (cli)
- dtsroll (alias)

## Dependencies

- node

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-08-04
- Package-manager version: 1.8.2
- Package-manager updated: 2026-05-04
- Local data: ok
- Upstream repository: https://github.com/privatenumber/dtsroll
- info: No cached GitHub release or tag data was available.
## Project history and usage

dtsroll is a TypeScript declaration-file bundler aimed at package authors. It runs after `tsc` emits `.d.ts` files and bundles declaration dependencies so published package types work for downstream consumers.

### Project history

The public repository and npm package appeared in January 2025. The README frames the project around a common TypeScript publishing failure: emitted declarations can preserve imports from private or development-only packages, leaving consumers with unresolved type references.

### Adoption history

dtsroll is early-stage but already has both npm and Homebrew distribution. Its npm registry metadata shows releases after the initial 2025 publication, and the Homebrew formula distributes the CLI from the npm tarball.

### How it is used

The default workflow is to run `dtsroll` after `tsc`. With no explicit entries, it reads `package.json`, finds declaration entry points from `types` or `exports`, bundles devDependency type imports into the emitted declarations, and leaves runtime dependencies external.

### Why package nerds care

dtsroll is package-nerd bait because it exists to fix packaging metadata fallout: `.d.ts` files are part of the package interface, and bad declaration imports break consumers even when runtime JavaScript is fine. It sits near tools such as `pkgroll` and `unplugin-dts` in the TypeScript library-publishing toolchain.

### Timeline

- 2025: Public privatenumber/dtsroll repository created.
- 2025: npm registry records initial dtsroll publication.
- 2025-2026: Homebrew formula distributes the CLI from npm release tarballs.

### Related projects

- The README explicitly lists `pkgroll` as a related zero-config JavaScript and DTS bundler and documents integration with `unplugin-dts` for Vite builds.

### Sources

- <https://github.com/privatenumber/dtsroll>
- <https://github.com/privatenumber/dtsroll#readme>
- <https://registry.npmjs.org/dtsroll>
- <https://formulae.brew.sh/api/formula/dtsroll.json>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** dtsroll
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable


## Related links

- [Source-control packages](https://pkg.so/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://pkg.so/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://pkg.so/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://pkg.so/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [node](https://pkg.so/brew/node/) - Runtime dependency declared by Homebrew.
- [json2ts](https://pkg.so/brew/json2ts/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [esbuild](https://pkg.so/brew/esbuild/) - Shares pkgdb curated category or tags: bundler, cli, developer-tools, typescript.
- [prettier](https://pkg.so/brew/prettier/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [vite](https://pkg.so/brew/vite/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [nx](https://pkg.so/brew/nx/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [typescript-language-server](https://pkg.so/brew/typescript-language-server/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [sf](https://pkg.so/brew/sf/) - Shares pkgdb curated category or tags: cli, developer-tools, typescript.
- [webpack](https://pkg.so/brew/webpack/) - Shares pkgdb curated category or tags: bundler, cli, developer-tools.
- [dts-bundle](https://pkg.so/npm/dts-bundle/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, dts, files.
- [dets](https://pkg.so/npm/dets/) - Local package facts share a topical domain. Shared terms: bundler, cli, declaration, developer, developer-tools.

## Combined YAML source

View the package source record on GitHub. [combined/dtsroll.yml](https://github.com/mxcl/pkgdb/blob/main/combined/dtsroll.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- cross-ecosystem install command graph
