Closed
Description
Current Situation
Currently IDOM's client is implemented in Vanilla JS. This makes it easy to develop and contribute to, but the code-base is growing in complexity, and without unit tests, there's some risk that it will become difficult to maintain.
Proposed Actions
Rewrite the client using typescript. Type annotations seem to be coming to browser Javascript engines soon so, like with Python, typed Javascript is likely to grow in popularity. Type annotations are not a replacement for unit tests, but they will help. It will also be a form of documentation that can be referred to by new contributors and users.