Svelte2dts screenshot

Svelte2dts

Author Avatar Theme by Firefish5000
Updated: 22 Nov 2020
23 Stars

Generates svelte.d.ts files to aid in creation of well typed sharable svelte components

Overview

Svelte2dts is an innovative tool designed to bridge the gap between Svelte components and TypeScript’s type safety. As developers increasingly seek to create well-typed components that can be reused across projects, this package promises to facilitate the generation of .d.ts files from Svelte files. This feature is particularly crucial for ensuring that components remain sharable and retain their typings, enhancing both development efficiency and reliability.

While the package is still in heavy development, it provides essential functionality that can be a game changer for teams who want to ensure their components are both modular and typed. It’s worth noting that users will need to navigate certain limitations regarding markup preprocessors and Typescript configurations, but the core offering stands out as a valuable resource in the Svelte ecosystem.

Features

  • Type Declaration Generation: Automatically generates .d.ts files from Svelte components, ensuring sharable and well-typed components.
  • Separation of Concerns: Requires a distinct directory for types to maintain compatibility with the Svelte VS-Code extension.
  • Installation and Usage: Easy to install via npm and use with straightforward commands through npx or within package.json.
  • Non-Interference with Svelte-Preprocess: Svelte-preprocess does not support type generation; this tool addresses that gap effectively.
  • Flexible Configuration: Offers guidance on configuring tsconfig.json and package.json for optimal functionality without confusing overlaps.
  • **Explicit API Considerations:**Focused development on generation commands while API support remains limited, emphasizing its current state in development.
  • Future Enhancements Planned: The developer expresses intent to introduce features that enable direct Typescript compilation alongside type generation.
  • Compatibility Notes: Users must ensure proper file management to avoid conflicts between Svelte components and their type declarations.