TypeKit is a typescript runtime written in Golang. This was based on goja and sobek which is a fork of goja. We also had forked goja to add improvements we internally called bagel and so we've merged our work with upstream sobek changes and threw on esbuild to transpile. While not as fast as Node(V8)/Deno(V8)/Bun(JSC) it's written in pure go.
This is in no way shape or form ready for use outside of tinkering/exploring. We welcome contributions to help improve the runtime but until typescript-go is finished, we'll have to transpile. Which is fine enough for now.
- Continue developing the runtime to be in partiy with latest ECMAScript standards.
- Utilize typescript-go once finished to compile typescript into javascript
- Run javascript on runtime and expose golang features like
chanto improve concurrency. - Have fun along the way.
It's not an attempt to shatter any records or provide world-class native typescript binaries (maybe someday).