Building a Large Scale JavaScript Application in TypeScript

Download this episode

Download Video

Download captions

Download Captions


How can you survive a project that uses JavaScript massively on both the client and the server using Node.js? The project is about online development components, such as the TypeScript playground ( or Visual Studio Online “Monaco," that enables users to edit Azure web sites online. We had an existing large JavaScript code base and we wanted to give TypeScript a try. Today the project is one of the largest TypeScript code bases inside Microsoft with more than 200k lines of TypeScript in production. In this talk I will give a quick introduction into TypeScript and then take a deep look at how TypeScript and other technologies were used to successfully scale up a very large JavaScript project.








Hall 1B



Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image

      Wow wonderful talk, Mr. Gamma! Each slide was very interesting. Many thanks for this talk.

      I would love to hear about your DI solution in TypeScript ("the missing slide").

    • User profile image

      A project I'm working on is facing the same issues with dependencies, and this presentation should hopefully convince everyone to take a leap of faith into using AMD. A couple of questions;

      What CSS loader are you using for AMD?
      How do you organise your project when a component has a code file, CSS, and perhaps templates. Do the code and css sit alongside each other?


    • User profile image

      For a 300-level talk, this was pretty fluffy. I don't want to *hear* what you did. I want you to *show* me how you did it!

    • User profile image

      @Erich Do you have any plans to make parts of Monaco open source?

    • User profile image

      @michael:I agree.

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.