Deno 1.0 released
Deno finally sees the light of day with its first public release. It’s still not clear whether it’s going to become the next big thing but the hopes are high.
Deno 1.0 released
Deno finally sees the light of day with its first public release. It’s still not clear whether it’s going to become the next big thing but the hopes are high.
JavaScript makes it into space
The SpaceX Dragon launch brings JavaScript to space! The Dragon 2 flight interface was built using Chromium and JavaScript along with C++ for flight computers.
JavaScript makes it into space
The SpaceX Dragon launch brings JavaScript to space! The Dragon 2 flight interface was built using Chromium and JavaScript along with C++ for flight computers.
2020
Optional chaining and nullish coalescing make their way to ES2020
Both proposals were moved to stage 4. The language syntax was extended with two new operators
?.
and ??
which help to write safer code.Optional chaining and nullish coalescing make their way to ES2020
Both proposals were moved to stage 4. The language syntax was extended with two new operators
?.
and ??
which help to write safer code.2019
React hooks announced
Sophie Alpert, Dan Abramov, and Ryan Florence define the problems with “wrapper hell, huge components and confusing classes” and introduce React hooks as a solution
React hooks announced
Sophie Alpert, Dan Abramov, and Ryan Florence define the problems with “wrapper hell, huge components and confusing classes” and introduce React hooks as a solution
Ryan Dahl presents the prototype of Deno
Ryan Dahl, the creator of Node.js, gives a talk at JSConf EU 2018 and introduces Deno, a new runtime for JavaScript and TypeScript. The talk is called 10 Things I Regret About Node.js and is still available on YouTube.
Ryan Dahl presents the prototype of Deno
Ryan Dahl, the creator of Node.js, gives a talk at JSConf EU 2018 and introduces Deno, a new runtime for JavaScript and TypeScript. The talk is called 10 Things I Regret About Node.js and is still available on YouTube.
2018
Prettier 1.0 released
Christopher Chedeau and James Long publish a blog post about Prettier 1.0 release.
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
Prettier 1.0 released
Christopher Chedeau and James Long publish a blog post about Prettier 1.0 release.
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
Initial Temporal proposal commit
Maggie Johnson-Pint proposes Temporal, a global Object that acts as a top-level namespace and brings a modern date/time API to ECMAScript
Initial Temporal proposal commit
Maggie Johnson-Pint proposes Temporal, a global Object that acts as a top-level namespace and brings a modern date/time API to ECMAScript
2017
Angular is born
The same team that built AngularJS rewrites it and introduces Angular 2, written in TypeScript.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
Angular is born
The same team that built AngularJS rewrites it and introduces Angular 2, written in TypeScript.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
First commits to the TC39 proposals repository
The repository contains information about the stages of proposals to ECMAScript
First commits to the TC39 proposals repository
The repository contains information about the stages of proposals to ECMAScript
2016
ES2015, big ECMAScript update
This update includes arrow function expressions, let and const keywords, class declaration, promises, generators, and many other improvements.
Starting from this edition, ECMAScript will also get regular updates each year.
Starting from this edition, ECMAScript will also get regular updates each year.
ES2015, big ECMAScript update
This update includes arrow function expressions, let and const keywords, class declaration, promises, generators, and many other improvements.
Starting from this edition, ECMAScript will also get regular updates each year.
Starting from this edition, ECMAScript will also get regular updates each year.
2015
First commit to Babel.js
Sebastian McKenzie starts a new project to help with converting the new version of ECMAScript into versions that older JavaScript engines can process
First commit to Babel.js
Sebastian McKenzie starts a new project to help with converting the new version of ECMAScript into versions that older JavaScript engines can process
Vue.js released by Evan You
“I figured, what if I could just extract the part that I really liked about Angular and build something really lightweight without all the extra concepts involved? I was also curious as to how its internal implementation worked. I started this experiment just trying to replicate this minimal feature set, like declarative data binding. That was basically how Vue started.”
Vue.js released by Evan You
“I figured, what if I could just extract the part that I really liked about Angular and build something really lightweight without all the extra concepts involved? I was also curious as to how its internal implementation worked. I started this experiment just trying to replicate this minimal feature set, like declarative data binding. That was basically how Vue started.”
2014
GitHub introduces Electron
GitHub develops Atom Shell, a framework that will later be renamed to Electron. The goal is to “create a straightforward framework that will allow people to use web technologies to build cross-platform desktop apps with all of the native trimmings.”
GitHub introduces Electron
GitHub develops Atom Shell, a framework that will later be renamed to Electron. The goal is to “create a straightforward framework that will allow people to use web technologies to build cross-platform desktop apps with all of the native trimmings.”
React goes open source
Tom Occhino and Jordan Walke introduce React at JSConf US 2013. React becomes an open-source project.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
React goes open source
Tom Occhino and Jordan Walke introduce React at JSConf US 2013. React becomes an open-source project.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
2013
TypeScript made public
After 2 years of internal development, Microsoft introduces a JavaScript superset called TypeScript. They developed TypeScript in an attempt to make JavaScript useful for large-scale development.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
TypeScript made public
After 2 years of internal development, Microsoft introduces a JavaScript superset called TypeScript. They developed TypeScript in an attempt to make JavaScript useful for large-scale development.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
2012
WebKit Remote Debugging
WebKit Remote Debugging marks a new era for mobile browser debugging. It later becomes the Chrome DevTools Protocol
WebKit Remote Debugging
WebKit Remote Debugging marks a new era for mobile browser debugging. It later becomes the Chrome DevTools Protocol
IE 9 with JIT compilation
The 32-bit version of IE 9 gets a new JScript engine named Chakra, which converts JScript into machine code before running it
IE 9 with JIT compilation
The 32-bit version of IE 9 gets a new JScript engine named Chakra, which converts JScript into machine code before running it
2011
WebStorm 1.0, a new JavaScript IDE by JetBrains
Previously known under its working name of Web IDE, WebStorm 1.0 is released with support for HTML, CSS, and JavaScript
WebStorm 1.0, a new JavaScript IDE by JetBrains
Previously known under its working name of Web IDE, WebStorm 1.0 is released with support for HTML, CSS, and JavaScript
npm was born
Isaac Schlueter invents a new package manager for JavaScript
npm was born
Isaac Schlueter invents a new package manager for JavaScript
2010
ECMAScript 3.1 becomes ECMAScript 5
Using version 3.1 as a starting point, ECMAScript gets revamped after a very long break. The new version includes such important features as strict mode, getters and setters, and JSON support.
ECMAScript 3.1 becomes ECMAScript 5
Using version 3.1 as a starting point, ECMAScript gets revamped after a very long break. The new version includes such important features as strict mode, getters and setters, and JSON support.
The rise of Node.js
Ryan Dahl gives a talk at JSConf 2009 and introduces Node.js, a JavaScript runtime built on top of Chrome’s V8 JavaScript engine. The hypothetical JavaScript Everywhere paradigm becomes a reality.
The rise of Node.js
Ryan Dahl gives a talk at JSConf 2009 and introduces Node.js, a JavaScript runtime built on top of Chrome’s V8 JavaScript engine. The hypothetical JavaScript Everywhere paradigm becomes a reality.
2009
Google Chrome: a fresh take on the browser
To “help drive innovation on the web”, Google launches the beta version of Google Chrome, along with a new JavaScript engine, V8. The announcement is accompanied by this comic book.
Google Chrome: a fresh take on the browser
To “help drive innovation on the web”, Google launches the beta version of Google Chrome, along with a new JavaScript engine, V8. The announcement is accompanied by this comic book.
Harmony project and ES4 termination
“It’s no secret that the JavaScript standards body, Ecma’s Technical Committee 39, has been split for over a year, with some members favoring ES4, a major fourth edition to ECMA-262, and others advocating ES3.1 based on the existing ECMA-262 Edition 3 (ES3) specification. Now, I’m happy to report, the split is over.”
Harmony project and ES4 termination
“It’s no secret that the JavaScript standards body, Ecma’s Technical Committee 39, has been split for over a year, with some members favoring ES4, a major fourth edition to ECMA-262, and others advocating ES3.1 based on the existing ECMA-262 Edition 3 (ES3) specification. Now, I’m happy to report, the split is over.”
HTML5 first public working draft
W3C publishes the specification for the 5th major revision of HTML
HTML5 first public working draft
W3C publishes the specification for the 5th major revision of HTML
2008
First iPhone launched, no Flash support
Steve Jobs introduces the first iPhone. The phone uses a mobile version of the Safari browser and has no support for Adobe Flash Player. Later, Jobs shares his thoughts on Flash and reveals the reasons behind the decision not to support it.
First iPhone launched, no Flash support
Steve Jobs introduces the first iPhone. The phone uses a mobile version of the Safari browser and has no support for Adobe Flash Player. Later, Jobs shares his thoughts on Flash and reveals the reasons behind the decision not to support it.
2007
Initial release of jQuery
John Resig makes the initial release of jQuery, a JavaScript library that makes it easier to navigate and manipulate the HTML DOM
Initial release of jQuery
John Resig makes the initial release of jQuery, a JavaScript library that makes it easier to navigate and manipulate the HTML DOM
2006
Apple open sources WebKit
Apple announces the immediate availability of the WebKit Open Source Project, their fork of KHTML
Apple open sources WebKit
Apple announces the immediate availability of the WebKit Open Source Project, their fork of KHTML
The rise of MDN
Deb Richardson joins Mozilla Corporation and launches the initial Mozilla Developer Network in March 2005
The rise of MDN
Deb Richardson joins Mozilla Corporation and launches the initial Mozilla Developer Network in March 2005
2005
Beta release of Gmail
Google publicly announces Gmail, launching the Ajax (even though the term wasn’t coined yet) and web application era. Its release on April 1 made some people think that the announcement was a prank.
Beta release of Gmail
Google publicly announces Gmail, launching the Ajax (even though the term wasn’t coined yet) and web application era. Its release on April 1 made some people think that the announcement was a prank.
2004
First draft of ECMAScript 4
The draft contains many new features: classes, a module system, optional type annotations and static typing, generators and iterators, destructuring assignment, algebraic data types
First draft of ECMAScript 4
The draft contains many new features: classes, a module system, optional type annotations and static typing, generators and iterators, destructuring assignment, algebraic data types
2003
2002
Internet Explorer 6 released
This will be the last major update to Internet Explorer for the next 5 years. Despite dominating the market, this version of Internet Explorer was widely criticized for its security issues and lack of support for modern web standards. It even got into some of the “worst tech products of all time” lists, being labeled as “the least secure software on the planet.”
Internet Explorer 6 released
This will be the last major update to Internet Explorer for the next 5 years. Despite dominating the market, this version of Internet Explorer was widely criticized for its security issues and lack of support for modern web standards. It even got into some of the “worst tech products of all time” lists, being labeled as “the least secure software on the planet.”
2001
2000
ECMAScript 3 released
The new version gets regular expressions, try/catch exception handling, better error handling, and some other important enhancements
ECMAScript 3 released
The new version gets regular expressions, try/catch exception handling, better error handling, and some other important enhancements
1999
Mozilla Project created
Netscape open sources its browser suite, which leads to the creation of the Mozilla Project
Mozilla Project created
Netscape open sources its browser suite, which leads to the creation of the Mozilla Project
1998
1997
The beginning of JavaScript standardization
Netscape realizes that JavaScript needs to be standardized and submits a proposal to ECMA International. Brendan Eich later shares the story behind this at an industry conference.
The beginning of JavaScript standardization
Netscape realizes that JavaScript needs to be standardized and submits a proposal to ECMA International. Brendan Eich later shares the story behind this at an industry conference.
1996
Netscape and Sun Microsystems announce JavaScript
In an attempt to make web pages dynamic, Brendan Eich from Netscape starts working on a new scripting language. The first version of this language is developed in ten days and is dubbed “Mocha”. Later it is renamed to LiveScript and finally to JavaScript.
JavaScript makes it into space
The SpaceX Dragon launch brings JavaScript to space! The Dragon 2 flight interface was built using Chromium and JavaScript along with C++ for flight computers.
Deno 1.0 released
Deno finally sees the light of day with its first public release. It’s still not clear whether it’s going to become the next big thing but the hopes are high.
2020
Optional chaining and nullish coalescing make their way to ES2020
Both proposals were moved to stage 4. The language syntax was extended with two new operators
?.
and ??
which help to write safer code.2019
React hooks announced
Sophie Alpert, Dan Abramov, and Ryan Florence define the problems with “wrapper hell, huge components and confusing classes” and introduce React hooks as a solution
Ryan Dahl presents the prototype of Deno
Ryan Dahl, the creator of Node.js, gives a talk at JSConf EU 2018 and introduces Deno, a new runtime for JavaScript and TypeScript. The talk is called 10 Things I Regret About Node.js and is still available on YouTube.
2018
Prettier 1.0 released
Christopher Chedeau and James Long publish a blog post about Prettier 1.0 release.
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
“It started as an experiment but it clearly resonated with a lot of people, amassing ~7000 GitHub stars and over 100,000 monthly npm downloads in just two months.”
Initial Temporal proposal commit
Maggie Johnson-Pint proposes Temporal, a global Object that acts as a top-level namespace and brings a modern date/time API to ECMAScript
2017
Angular is born
The same team that built AngularJS rewrites it and introduces Angular 2, written in TypeScript.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
At this point, quite a few teams have abandoned AngularJS in favor of libraries like React. Some developers even wrote break-up letters to their once-beloved framework.
First commits to the TC39 proposals repository
The repository contains information about the stages of proposals to ECMAScript
2016
ES2015, big ECMAScript update
This update includes arrow function expressions, let and const keywords, class declaration, promises, generators, and many other improvements.
Starting from this edition, ECMAScript will also get regular updates each year.
Starting from this edition, ECMAScript will also get regular updates each year.
2015
io.js: Node.js split in two
First commit to Babel.js
Sebastian McKenzie starts a new project to help with converting the new version of ECMAScript into versions that older JavaScript engines can process
Vue.js released by Evan You
“I figured, what if I could just extract the part that I really liked about Angular and build something really lightweight without all the extra concepts involved? I was also curious as to how its internal implementation worked. I started this experiment just trying to replicate this minimal feature set, like declarative data binding. That was basically how Vue started.”
2014
GitHub introduces Electron
GitHub develops Atom Shell, a framework that will later be renamed to Electron. The goal is to “create a straightforward framework that will allow people to use web technologies to build cross-platform desktop apps with all of the native trimmings.”
React goes open source
Tom Occhino and Jordan Walke introduce React at JSConf US 2013. React becomes an open-source project.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
The audience at the conference is skeptical. Some people think that React is a huge step backward. This happened because most of the conference attendees were “early adopters” and “early majority”, while React was targeted at “innovators”.
2013
TypeScript made public
After 2 years of internal development, Microsoft introduces a JavaScript superset called TypeScript. They developed TypeScript in an attempt to make JavaScript useful for large-scale development.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
The first impressions of TypeScript were controversial. For example, Miguel de Icaza highlighted a number of advantages but also raised concerns about the lack of support for TypeScript in tooling other than Microsoft Visual Studio.
webpack module bundler
webpack, a new static module bundler for JavaScript applications, is introduced
2012
WebKit Remote Debugging
WebKit Remote Debugging marks a new era for mobile browser debugging. It later becomes the Chrome DevTools Protocol
IE 9 with JIT compilation
The 32-bit version of IE 9 gets a new JScript engine named Chakra, which converts JScript into machine code before running it
IE6 Countdown
2011
WebStorm 1.0, a new JavaScript IDE by JetBrains
Previously known under its working name of Web IDE, WebStorm 1.0 is released with support for HTML, CSS, and JavaScript
npm was born
Isaac Schlueter invents a new package manager for JavaScript
2010
ECMAScript 3.1 becomes ECMAScript 5
Using version 3.1 as a starting point, ECMAScript gets revamped after a very long break. The new version includes such important features as strict mode, getters and setters, and JSON support.
The rise of Node.js
Ryan Dahl gives a talk at JSConf 2009 and introduces Node.js, a JavaScript runtime built on top of Chrome’s V8 JavaScript engine. The hypothetical JavaScript Everywhere paradigm becomes a reality.
2009
Google Chrome: a fresh take on the browser
To “help drive innovation on the web”, Google launches the beta version of Google Chrome, along with a new JavaScript engine, V8. The announcement is accompanied by this comic book.
Harmony project and ES4 termination
“It’s no secret that the JavaScript standards body, Ecma’s Technical Committee 39, has been split for over a year, with some members favoring ES4, a major fourth edition to ECMA-262, and others advocating ES3.1 based on the existing ECMA-262 Edition 3 (ES3) specification. Now, I’m happy to report, the split is over.”
HTML5 first public working draft
W3C publishes the specification for the 5th major revision of HTML
2008
First iPhone launched, no Flash support
Steve Jobs introduces the first iPhone. The phone uses a mobile version of the Safari browser and has no support for Adobe Flash Player. Later, Jobs shares his thoughts on Flash and reveals the reasons behind the decision not to support it.
2007
Microsoft restarts IE development
Initial release of jQuery
John Resig makes the initial release of jQuery, a JavaScript library that makes it easier to navigate and manipulate the HTML DOM
2006
Apple open sources WebKit
Apple announces the immediate availability of the WebKit Open Source Project, their fork of KHTML
The rise of MDN
Deb Richardson joins Mozilla Corporation and launches the initial Mozilla Developer Network in March 2005
2005
Beta release of Gmail
Google publicly announces Gmail, launching the Ajax (even though the term wasn’t coined yet) and web application era. Its release on April 1 made some people think that the announcement was a prank.
2004
First draft of ECMAScript 4
The draft contains many new features: classes, a module system, optional type annotations and static typing, generators and iterators, destructuring assignment, algebraic data types
2003
Mozilla Firefox released
JSLint
JSLint, the “grandfather of all JavaScript syntax checkers”, is introduced
2002
Internet Explorer 6 released
This will be the last major update to Internet Explorer for the next 5 years. Despite dominating the market, this version of Internet Explorer was widely criticized for its security issues and lack of support for modern web standards. It even got into some of the “worst tech products of all time” lists, being labeled as “the least secure software on the planet.”
2001
Flash Player 5 released with ActionScript
2000
ECMAScript 3 released
The new version gets regular expressions, try/catch exception handling, better error handling, and some other important enhancements
1999
Mozilla Project created
Netscape open sources its browser suite, which leads to the creation of the Mozilla Project
1998
The first edition of ECMA-262 published
With the first edition of ECMAScript, browser vendors, among others, get a consistent set of guidelines for implementing the JavaScript language
1997
The beginning of JavaScript standardization
Netscape realizes that JavaScript needs to be standardized and submits a proposal to ECMA International. Brendan Eich later shares the story behind this at an industry conference.
JavaScript gets its first dialect
1996
Netscape and Sun Microsystems announce JavaScript
In an attempt to make web pages dynamic, Brendan Eich from Netscape starts working on a new scripting language. The first version of this language is developed in ten days and is dubbed “Mocha”. Later it is renamed to LiveScript and finally to JavaScript.
The Timeline data is open source and available on GitHub. Feel free to create a pull request if you found a mistake.
Special thanks
for helping us prepare the timeline go to