TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
TypeScript HTML PowerShell Batchfile Groovy Shell
Latest commit 5b9004e Jan 21, 2017 @ahejlsberg ahejlsberg committed on GitHub Merge pull request #13604 from Microsoft/intersectionBaseTypes
Allow deriving from object and intersection types
Permalink
Failed to load latest commit information.
.vscode [Transforms] Merge master 07/11 into transform (#9697) Jul 18, 2016
bin Moved LKG folder to lib Jul 27, 2015
doc Add 'wiki' and 'handbook' directories to the docs folder with READMEs. Feb 9, 2016
lib Update LKG Jan 5, 2017
scripts Merge branch 'master' into map5 Dec 27, 2016
src Merge pull request #13604 from Microsoft/intersectionBaseTypes Jan 21, 2017
tests Merge pull request #13604 from Microsoft/intersectionBaseTypes Jan 21, 2017
.editorconfig Use CRLF, not LF. Mar 2, 2015
.gitattributes Never normalize end-of-lines on clone/commit. May 31, 2015
.gitignore Merge pull request #11605 from Microsoft/vladima/convert-enums-to-const Oct 14, 2016
.mailmap merge Dec 14, 2016
.npmignore Add more files to .npmignore Dec 15, 2016
.travis.yml merge Dec 14, 2016
AUTHORS.md merge Dec 14, 2016
CONTRIBUTING.md Remove baseline-accept warning from CONTRIBUTING Oct 17, 2016
CopyrightNotice.txt Add snapshot of compiler sources Jul 13, 2014
Gulpfile.ts Merge branch 'master' into map5 Jan 17, 2017
Jakefile.js Stop using "dom" types Jan 12, 2017
LICENSE.txt Add snapshot of compiler sources Jul 13, 2014
README.md move to contribute header Sep 13, 2016
ThirdPartyNoticeText.txt [Transforms] Merge master 07/11 into transform (#9697) Jul 18, 2016
issue_template.md Update issue template Nov 16, 2016
jenkins.sh Jenkins / .net CI support Oct 20, 2016
netci.groovy merge Dec 14, 2016
package.json Fix gulp-typescript version Jan 9, 2017
pull_request_template.md No bold "Fixes" Feb 19, 2016
tslint.json Use native maps when they're available Dec 8, 2016

README.md

Build Status npm version Downloads

TypeScript

Join the chat at https://gitter.im/Microsoft/TypeScript

TypeScript is a language for application-scale JavaScript. TypeScript adds optional types, classes, and modules to JavaScript. TypeScript supports tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript. Try it out at the playground, and stay up to date via our blog and Twitter account.

Installing

For the latest stable version:

npm install -g typescript

For our nightly builds:

npm install -g typescript@next

Contribute

There are many ways to contribute to TypeScript.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

Building

In order to build the TypeScript compiler, ensure that you have Git and Node.js installed.

Clone a copy of the repo:

git clone https://github.com/Microsoft/TypeScript.git

Change to the TypeScript directory:

cd TypeScript

Install Gulp tools and dev dependencies:

npm install -g gulp
npm install

Use one of the following to build and test:

gulp local            # Build the compiler into built/local 
gulp clean            # Delete the built compiler 
gulp LKG              # Replace the last known good with the built one.
                      # Bootstrapping step to be executed when the built compiler reaches a stable state.
gulp tests            # Build the test infrastructure using the built compiler. 
gulp runtests         # Run tests using the built compiler and test infrastructure. 
                      # You can override the host or specify a test for this command. 
                      # Use host=<hostName> or tests=<testPath>. 
gulp runtests-browser # Runs the tests using the built run.js file. Syntax is gulp runtests. Optional
                        parameters 'host=', 'tests=[regex], reporter=[list|spec|json|<more>]'.
gulp baseline-accept  # This replaces the baseline test results with the results obtained from gulp runtests.
gulp lint             # Runs tslint on the TypeScript source.
gulp help             # List the above commands. 

Usage

node built/local/tsc.js hello.ts

Roadmap

For details on our planned features and future direction please refer to our roadmap.