Skip to content

D-001: Complete TypeScript migration for all components #403

Description

@Nanle-code

Overview

Complete the TypeScript migration by converting all remaining JSX components to TSX and adding proper type definitions.

Tasks

  • Convert all components in to TSX
  • Convert all components in to TSX
  • Convert all components in to TSX
  • Add proper interface definitions for props
  • Remove legacy files from
  • Enable strict mode for all TypeScript files
  • Add type coverage reporting to CI

Acceptance Criteria

  • All components are typed with proper interfaces
  • No types used (except where absolutely necessary)
  • Type coverage > 90%
  • All tests pass with type checking

Priority

High

Labels

typescript, enhancement, good first issue


Implementation Details

Step 1: Set up TypeScript configuration

  • Ensure tsconfig.json has strict mode enabled
  • Add path aliases for cleaner imports
  • Configure ESLint to work with TypeScript

Step 2: Convert components systematically

  • Start with leaf components (no dependencies)
  • Move to parent components
  • Add proper TypeScript interfaces for props
  • Use generic types where appropriate

Step 3: Type the library layer

  • Convert stellar.js to stellar.ts completely
  • Add types for all Horizon API responses
  • Create utility types for common patterns

Step 4: Remove legacy files

  • Delete .js files after .ts conversion
  • Update all imports
  • Run full type check

Step 5: Add type coverage

  • Install type-coverage package
  • Add type coverage threshold to CI
  • Generate type coverage reports

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions