We created Typescript for GNOME to reduce the difficulty of developing and maintaining desktop extensions for the GNOME desktop environment, which is the default user interface of Red Hat, Ubuntu, and many other Linux-based operating systems. We developed a set of tools that make it easy to use the TypeScript programming language with GNOME's core libraries, and we ported the GNOME Shell's codebase from JavaScript to Typescript. The port to TypeScript has allowed us to generate comprehensive documentation of GNOME's JavaScript APIs, and it even helped us detect and fix several existing bugs in GNOME. Typescript for GNOME improves the stability of the desktop and makes it easier to develop new extensions and features for GNOME. Once it is included in an official GNOME release, this project will improve the experience of the many users and developers of the GNOME desktop, which ultimately is the reason we chose this project.
Conrad Hale
Joshua Curran
Kyle Leskowyak
Advisor: Jason Gerst



