diff --git a/es6.html b/es6.html new file mode 100644 index 0000000..45db96b --- /dev/null +++ b/es6.html @@ -0,0 +1,132 @@ + + + + + + + + + + io.js - ES6 on io.js + + + + + + +
+
+ +
+ FAQ + ES6 + Docs +
+
+ +
+ +

ES6 on io.js

+ +
+ +

io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.

+

Version 1.0.0 of io.js ships with V8 3.31.71.4, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.

+
+ +
+ +

No more --harmony flag

+
+

On joyent/node@0.12.x (V8 3.26), the --harmony runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof which were hidden under --harmony-typeof). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators), or simply enable all of them and then use a restricted subset.

+

With io.js@1.x (V8 3.31+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:

+ +
    +
  • All shipping features, the ones that V8 has considered stable, like generators, templates, new string methods and many others are turned on by default on io.js and do NOT require any kind of runtime flag.
  • +
  • Then there are staged features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of generators on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: --es_staging (or its synonym, --harmony).
  • +
  • Finally, all in progress features can be activated individually by their respective harmony flag (e.g. --harmony_arrow_functions), although this is highly discouraged unless for testing purposes.
  • +
+
+ +

+ Which ES6 features ship with io.js by default (no runtime flag required)? +

+
+ + +

You can view a more detailed list, including a comparison with other engines, on the compat-table project page.

+
+
+ +
+

+ Which ES6 features are behind the --es_staging flag? +

+
+ +
+
+ +
+ +

+ I have my infrastructure set up to leverage the --harmony flag. Should I remove it? +

+
+

The current behaviour of the --harmony flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.

+
+
+ +
+ +

+ How do I find which version of V8 ships with a particular version of io.js? +

+
+

io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process global object. In case of the V8 engine, type the following in your terminal to retrieve its version:

+
iojs -p process.versions.v8
+ +

E.g. output: 3.31.71.4.

+ +
+
+
+ + + + + + diff --git a/faq.html b/faq.html index 8eeac01..0258b8a 100644 --- a/faq.html +++ b/faq.html @@ -1,75 +1,84 @@ - - - - - - - Javascript IO - FAQ - - - - - -

- - io.js - -

-

FAQ

-
+ + + + + + + io.js - FAQ + + + -

- Q: What is io.js? -

-

- io.js is a JavaScript platform that is compatible with Node.js & npm. -

-
-
- -

- Q: How can I contribute? -

-

- Everyone can help. -
-
- - io.js adheres to a Code of Conduct, and contributions, releases, and contributorship are under an open governance model. -
-
- - To get started, there are open discussions on github, and we'd love to hear your feedback. - Becoming invloved in discussions is a good way to get a feel of where you can help out further. If there is - something there you feel you can tackle, please make a pull request. -
-
- In addition, using Nodebug.me is a good way to help Triage the issues in the backlog. -

-
-
- -

- Q: Where do discussons take place? -

-

- There is an #io.js channel on Freenode IRC. We keep logs of the channel here. -

-
-
- -

- Q: What is open source governance? -

-

- Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source] -

+ + +
+
+ +
+ FAQ + ES6 + Docs
- - Back to home - - +
+ +
+ +

FAQ

+ +

+ What is io.js? +

+

+ io.js is a JavaScript platform that is compatible with Node.js & npm. +

+ + +

+ How can I contribute? +

+

+ Everyone can help. + io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model. +

+

+ To get started, there are open discussions on github, and we'd love to hear your feedback. + Becoming invloved in discussions is a good way to get a feel of where you can help out further. If there is + something there you feel you can tackle, please make a pull request. + + + In addition, using Nodebug.me is a good way to help Triage the issues in the backlog. +

+ +

+ Where do discussons take place? +

+

+ There is an #io.js channel on Freenode IRC. We keep logs of the channel here. +

+ + +

+ What is open source governance? +

+

+ Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source] +

+ +
+ + + + + diff --git a/images/1.0.0.png b/images/1.0.0.png new file mode 100644 index 0000000..4c21c1a Binary files /dev/null and b/images/1.0.0.png differ diff --git a/index.html b/index.html index 206b932..5d10200 100644 --- a/index.html +++ b/index.html @@ -2,53 +2,73 @@ - - - - - - JavaScript I/O - + + + + + + io.js - JavaScript I/O + + -

- - io.js - -

-

JavaScript I/O

-

- io.js is a JavaScript platform that is compatible with Node.js & npm. -

- Coming soon... -

- The initial 1.0.0 release is planned for January 13, 2015. -

-

- Nightly releases are available for testing. + +

+
+ +
+ FAQ + ES6 + Docs +
+
+ +
+

JavaScript I/O

+ +

+ Bringing ES6 to the Node Community!

-

- io.js contributions, releases, and contributorship are under an open governance model. +

+ io.js is an npm compatible platform originally based on node.js™.

- - FAQ - - -
- - Chat (IRC) - - Logs + +
+ + +
+ + + Version 1.0.0 (Beta stability) + +
+ + Download for + Linux, + Win32, Win64, + or + Mac. + +
-
+ +

+ Nightly releases are avaliable for testing. +

+
+ + + diff --git a/style.css b/style.css index 29a777c..3492b53 100644 --- a/style.css +++ b/style.css @@ -2,101 +2,231 @@ box-sizing: border-box; -webkit-tap-highlight-color: transparent; } + html { - font-family: "Myriad Set Pro", "Lucida Grande", "Helvetica Neue", "Luxi Sans", "DejaVu Sans", Tahoma, "Hiragino Sans GB", Arial, sans-serif; - font-weight: 300; - font-size: 16px; - line-height: 1.4; - text-align: center; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; + font-family: 'Lato', sans-serif; + font-size: 18px; + line-height: 1.5; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; } + body { - display: inline-block; - max-width: 700px; - margin: 5px 6px; - background: #111; - color: #eee; -} + color: #666; + margin: 0; + padding: 0; + text-align: center; +} + +.content { + position: relative; + max-width: 640px; + padding-left: 25px; + padding-right: 25px; + margin: 0 auto; +} + +header { + background: #292829; + padding: 20px; +} + +header .content { + display: -webkit-flex; + display: flex; +} + +header .spacer { + -webkit-flex: 1; + flex: 1; +} + +header a { + color: rgba(255, 255, 255, 0.5); + font-weight: 700; + font-size: 1rem; + padding: 0 0.7rem; +} + +header a:first-child { + padding-left: 0; +} + +header a:last-child { + padding-right: 0; +} + +header a:hover { + color: #F7DF31; +} + h1 { - font-size: 2em; + color: black; + font-size: 3rem; } + h2 { - font-size: 1.125em; - margin: 2.2em 0; + color: black; + font-size: 1.4rem; + margin-top: 3rem; } + p { - font-size: 15px; - margin: .6em 0; + font-size: 1rem; + line-height: 1.8; + margin: 0.5rem 0; + font-weight: 400; + text-align: justify; } + a { - text-decoration: none; - color: #eee; - border-bottom: 1px solid #eee; - transition: .3s all ease; -} -a:hover { - color: #aaa; - border-bottom: 1px solid #aaa; -} -.button { - border: solid 1px #eee; - display: inline-block; - padding: 1em; - margin: 10px; - background-color: transparent; - border-radius: 3px; - transition: .3s all ease; - color: #eee; -} -.button-large { - font-size: 20px; - margin: 15px !important; - padding: 1.3em; - border-radius: 5px; -} -.button:hover { - background-color: #eee; - color: #333; -} -.multi-button { - display: inline-block -} -.multi-button .button { - margin: 0; - border-left: none; -} -.multi-button .button:first-child { - margin: 0; - border-radius: 3px 0 0 3px; - border: solid 1px #eee; -} -.multi-button .button:last-child { - border-radius: 0 3px 3px 0; -} -.faq-item { - border-radius: 3px; - border:solid 1px #eee; - margin:20px; -} -.faq-title { - margin:0; - line-height:3em; - background: #eee; - color:#333; -} -.faq-body { - margin:1em; -} -.brand { - margin: 5px 10px; - text-align: left; -} -.brand a { - border-bottom: none; - color: #aaa; -} -.heading { - font-size: 55px; - line-height: 175px; + text-decoration: none; + color: #000; +} + +p a { + text-decoration: underline; + padding-left: 2px; + padding-right: 2px; + margin-left: -2px; + margin-right: -2px; + border-radius: 2px; +} + +p a:hover { + background: #F7DF31; + text-decoration: none; +} + +ul { + text-align: left; +} + +.release { + position: relative; + background: #EEE; + border-radius: 4px; + margin: 40px 0; + padding: 20px; + min-height: 160px; +} + +.release-logo { + position: absolute; + top: 20px; + left: 26px; + height: 120px; +} + +.release-details { + padding-left: 150px; + padding-top: 24px; + text-align: left; +} + +.release-version { + display: block; + font-size: 1.4rem; + font-weight: 700; + color: black; +} + +.release-version em { + color: rgba(0, 0, 0, 0.5); + font-style: normal; + font-size: 1.1rem; +} + +.release-downloads { + color: rgba(0, 0, 0, 0.5); + font-size: 0.9rem; +} + +.release-downloads a:hover { + text-decoration: underline; +} + +nav { + font-size: 0.9rem; + margin: 70px 0 30px 0; + transition: all 0.2s; +} + +nav a { + display: inline-block; + line-height: 2.2; + padding: 0 15px; + margin: 0; + border-left: 1px solid #DDD; + transition: all 0.2s; +} + +nav a:first-child, nav a:hover, nav a:hover + a { + border-color: transparent; +} + +nav a:hover { + background: #F7DF31; + color: #292829; + border-radius: 3px; +} + +p.lead { + text-align:center; +} + +@media (max-width: 560px) { + nav a { + line-height: 3; + display: block; + border: none; + } + .release-version em { + display: block; + } +} + +@media (max-width: 480px) { + h1 { + font-size: 2rem; + } + + p { + line-height: 1.6; + } + + nav { + margin-top: 20px; + } + + header .content { + padding: 0; + } + + header a { + padding-left: 1rem; + } +} + +@media (max-width: 410px) { + .content { + padding-left: 15px; + padding-right: 15px; + } + .release-logo-link { + display: block; + text-align: center; + } + .release-logo { + position: relative; + top: initial; + left: initial; + } + .release-version { + text-align: center; + } + .release-details { + padding-left: initial; + padding-top: initial; + } }