A repository for high-quality TypeScript type definitions for JavaScript libraries.
DefinitelyTyped is a massive, open-source repository hosting high-quality TypeScript type definitions for JavaScript libraries that lack built-in TypeScript support. It solves the problem of type safety when using non-TypeScript npm packages by providing community-maintained `.d.ts` files. These definitions are published to npm under the `@types` scope and are automatically included by the TypeScript compiler.
TypeScript developers who use JavaScript libraries without native TypeScript types, as well as library maintainers and contributors looking to improve type definitions for the ecosystem.
Developers choose DefinitelyTyped because it offers a centralized, quality-controlled source of type definitions for thousands of packages, enabling full TypeScript tooling support. Its rigorous testing and community review process ensure reliability, and its seamless integration with npm makes adoption effortless.
The repository for high quality TypeScript type definitions.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides type definitions for thousands of JavaScript libraries, from major frameworks like React to niche utilities, as highlighted in the key features.
All contributions must pass strict type-checking and linting tests, with review by maintainers, ensuring high reliability as enforced in the CI workflow.
Definitions are automatically published to npm under the @types scope, making installation straightforward with commands like `npm install --save-dev @types/node`.
Maintained by a global community with package owners for ongoing support, fostering collaboration and diverse contributions, as noted in the definition owners section.
Supports multiple TypeScript versions and provides tags for older compilers, ensuring backward compatibility, as described in the support window documentation.
Type definitions can lag behind library updates, especially for popular projects, as changes rely on community PRs and reviews, leading to delays highlighted in the PR merge times section.
Setting up for contributions involves pnpm monorepo management, strict linting rules, and detailed test requirements, which can be daunting for newcomers, as outlined in the 'Make a pull request' steps.
Only includes definitions for packages with demonstrated real-world usage, leaving out obscure or newly released libraries until community demand arises, per the justification for new definitions.
Quality and timeliness depend on volunteer maintainers, which can lead to inconsistencies or abandoned packages, as acknowledged in the FAQ about PR merges and owner availability.