Skip to content
A UI toolkit for modern browsers
JavaScript TypeScript CSS HTML
Branch: master
Clone or download
Latest commit 562e846 Apr 25, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
projects Ignore .tscache folder in sublime project. Nov 4, 2014
src Rev'ing WinJS to 4.4.5 Jan 26, 2019
tasks Updates test file to check if MSApp.execUnsafeLocalFunction exsists b… Mar 25, 2016
test-pages/MediaPlayer Add MediaPlayer test page Oct 1, 2015
tests Migrate FlipView to _ElementResizeInstrument Sep 24, 2015
tools/dts-verifier Update Oct 2, 2015
typings Added print and share icons Oct 11, 2015
.gitattributes Adding .gitattributes to keep line endings consistent Apr 2, 2014
.gitignore Automate release process Jul 31, 2015
.jscsrc Moved all getComputedStyle calls to _ElementUtilities._getComputedStyle Jul 22, 2015
.jshintignore Update copyright header and license. Feb 26, 2015
.travis.yml Use newer travis infrastructure. Aug 7, 2015 Update copyright header and license. Feb 26, 2015
License.txt Update copyright header and license. Feb 26, 2015 Update Apr 25, 2019
WinJS.nuspec Automate release process Jul 31, 2015
bower.json Automate release process Jul 31, 2015
config.js Automate release process Jul 31, 2015
gruntfile.js Added TV specific files to build system Aug 14, 2015
package-lock.json Rev'ing WinJS to 4.4.5 Jan 26, 2019
package.json Rev'ing WinJS to 4.4.5 Jan 26, 2019

Windows Library for JavaScript (WinJS)

Join the chat at Build Status


Microsoft is committed to making sure that WinJS continues to run for existing customers. At this time we don't have plans to invest in new features or feature requests. Bug fixes will be limited to correcting substantial issues that are blocking customer deployments. We may also consider bug fixes to help our customers maintain their existing WinJS-based apps.


WinJS is a set of JavaScript toolkits that allow developers to build applications using HTML/JS/CSS technology forged with the following principles in mind:

  • Provide developers with a distinctive set of UI controls with high polish and performance with fundamental support for touch, mouse, keyboard and accessibility
  • Provide developers with a cohesive set of components and utilities to build the scaffolding and infrastructure of their applications

This is a first step for the WinJS project and there is still a lot of work that needs to be done. Feel free to participate by contributing along the way.


There are many ways to contribute to the project.

You can contribute by reviewing and sending feedback on code checkins, suggesting and trying out new features as they are implemented, submitting bugs and helping us verify fixes as they are checked in, as well as submitting code fixes or code contributions of your own.

Note that all code submissions will be rigorously reviewed and tested by the team, and only those that meet an extremely high bar for both quality and design appropriateness will be merged into the source.

Build WinJS

In order to build WinJS, ensure that you have git and Node.js installed.

Clone a copy of the master WinJS git repo:

git clone

Change to the winjs directory:

cd winjs

Install the grunt command-line interface globally:

npm install -g grunt-cli

Grunt dependencies are installed separately in each cloned git repo. Install the dependencies with:

npm install

Run the following and the WinJS JavaScript and CSS files will be put in the bin directory:


Note: You may need to use sudo (for OSX, *nix, BSD etc) or run your command shell as Administrator (for Windows) to install Grunt globally.

Tests status

Refer to for the current status of the unit tests and the list of known issues.

Try WinJS

Check out our online playground at

Follow Us


You can’t perform that action at this time.