Babel

.babelrc

  1. "presets": ["@babel/preset-typescript"]
  2. }

Using Command Line Interface

  1. ./node_modules/.bin/babel --out-file bundle.js src/index.ts

package.json

  1. {
  2. "scripts": {
  3. },
  4. }

Execute Babel from the command line

  1. npm run build

Browserify

Install

  1. npm install tsify

Using API

  1. var browserify = require("browserify");
  2. var tsify = require("tsify");
  3. browserify()
  4. .add("main.ts")
  5. .plugin("tsify", { noImplicitAny: true })
  6. .bundle()
  7. .pipe(process.stdout);

More details: smrq/tsify

Duo

Install

  1. npm install duo-typescript

Using Command Line Interface

  1. duo --use duo-typescript entry.ts

Using API

  1. var Duo = require("duo");
  2. var fs = require("fs")
  3. var path = require("path")
  4. var typescript = require("duo-typescript");
  5. var out = path.join(__dirname, "output.js")
  6. Duo(__dirname)
  7. .entry("entry.ts")
  8. .use(typescript())
  9. if (err) throw err;
  10. // Write compiled result to output file
  11. fs.writeFileSync(out, results.code);
  12. });

More details:

Grunt

Install

  1. npm install grunt-ts

More details: TypeStrong/grunt-ts

Gulp

Install

  1. npm install gulp-typescript

Basic gulpfile.js

  1. var gulp = require("gulp");
  2. var ts = require("gulp-typescript");
  3. gulp.task("default", function () {
  4. var tsResult = gulp.src("src/*.ts")
  5. .pipe(ts({
  6. noImplicitAny: true,
  7. out: "output.js"
  8. }));
  9. return tsResult.js.pipe(gulp.dest("built/local"));
  10. });

Jspm

Install

    Note: Currently TypeScript support in jspm is in 0.16beta

    More details: TypeScriptSamples/jspm

    Webpack

    Install

    1. npm install ts-loader --save-dev

    Basic webpack.config.js when using Webpack 2

    1. module.exports = {
    2. entry: "./src/index.tsx",
    3. output: {
    4. path: '/',
    5. filename: "bundle.js"
    6. },
    7. resolve: {
    8. extensions: [".tsx", ".ts", ".js", ".json"]
    9. },
    10. module: {
    11. rules: [
    12. { test: /\.tsx?$/, use: ["ts-loader"], exclude: /node_modules/ }
    13. ]
    14. }
    15. }

    See more details on ts-loader here.

    MSBuild

    Update project file to include locally installed Microsoft.TypeScript.Default.props (at the top) and Microsoft.TypeScript.targets (at the bottom) files:

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    3. <!-- Include default props at the top -->
    4. <Import
    5. Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props"
    6. Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
    7. <!-- TypeScript configurations go here -->
    8. <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    9. <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
    10. <TypeScriptSourceMap>true</TypeScriptSourceMap>
    11. </PropertyGroup>
    12. <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    13. <TypeScriptRemoveComments>true</TypeScriptRemoveComments>
    14. <TypeScriptSourceMap>false</TypeScriptSourceMap>
    15. </PropertyGroup>
    16. <!-- Include default targets at the bottom -->
    17. <Import
    18. Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
    19. Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
    20. </Project>

    More details about defining MSBuild compiler options:

    NuGet

    • Right-Click -> Manage NuGet Packages
    • Search for Microsoft.TypeScript.MSBuild
    • When install is complete, rebuild!

    More details can be found at and using nightly builds with NuGet