Proposal: Migrate to TypeScript
Open
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 92
- Forks
- 45
- PR merge metrics
- No merged PRs in 30d
Description
Reasons
I have gone through a reasonable amount of the codebase and I have seen that there is a need to improve the development experience and code quality. TypeScript is better suited for building and managing large-scale applications with multiple teams.
- It checks the code for errors and warnings before you run it.
- It static typing feature will reduce the number of errors at build time; hence better developer experience.
- There will be no need for
prop-types, type checking feature will take care of this. - It makes code easier to read, maintain, and debug, and can also help reduce the risk of security vulnerabilities.
- It provides extra tooling and features like interfaces, classes, namespaces, generics, etc.
Proposal
- Migration can be done in parts since existing JavaScript code will still run in TypeScript.
- TypeScript code must not be strictly typed as the migration starts. Changes can be made as it progresses. For example, tests can still be left as JavaScript code.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing JavaScript codebase and tests to identify a feasible migration phase. The proposal does not name files, entry points, or a concrete scope, so define those boundaries and measurable completion criteria before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- developer-experience, frontend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100