Overview
Complete the TypeScript migration by converting all remaining JSX components to TSX and adding proper type definitions.
Tasks
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
Overview
Complete the TypeScript migration by converting all remaining JSX components to TSX and adding proper type definitions.
Tasks
Acceptance Criteria
Priority
High
Labels
typescript, enhancement, good first issue
Implementation Details
Step 1: Set up TypeScript configuration
Step 2: Convert components systematically
Step 3: Type the library layer
Step 4: Remove legacy files
Step 5: Add type coverage