Thanks to gradual typing in TypeScript, you can progressively add types to your front-end codebase. Once you're ready to move on to more serious type systems, you can now use our tool to automatically translate your TypeScript codebase to Scala!
What it does
It translates (just about) arbitrary TypeScript code to syntactically equivalent Scala code.
How we built it
We added a transformer in the TypeScript compiler, which in written in TypeScript, to emit Scala code from the TypeScript ASTs.
Challenges we ran into
The TypeScript type system does not always match Scala's. Therefore, some features are hard to impossible to accurately translate. Yet, we do a pretty good job on typical TypeScript compiler codebases.
Accomplishments that we're proud of
What we learned
What's next for TypeScript Scala compiler
Manual fix of the generated code to have a completely working TypeScript compiler written in Scala.