Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

CoffeeScript
CoffeeScript

2.1K
1.1K
+ 1
1K
ES6
ES6

17.8K
14.8K
+ 1
149
Add tool

CoffeeScript vs ES6: What are the differences?

What is CoffeeScript? Unfancy JavaScript. CoffeeScript is a little language that compiles into JavaScript. Underneath that awkward Java-esque patina, JavaScript has always had a gorgeous heart. CoffeeScript is an attempt to expose the good parts of JavaScript in a simple way.

What is ES6? The next version of JavaScript. Goals for ECMAScript 2015 include providing better support for large applications, library creation, and for use of ECMAScript as a compilation target for other languages. Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls.

CoffeeScript and ES6 can be primarily classified as "Languages" tools.

"Easy to read" is the primary reason why developers consider CoffeeScript over the competitors, whereas "ES6 code is shorter than traditional JS" was stated as the key factor in picking ES6.

CoffeeScript is an open source tool with 15.2K GitHub stars and 1.99K GitHub forks. Here's a link to CoffeeScript's open source repository on GitHub.

Slack, StackShare, and ebay are some of the popular companies that use ES6, whereas CoffeeScript is used by Typeform, thoughtbot, and Trello. ES6 has a broader approval, being mentioned in 1461 company stacks & 1725 developers stacks; compared to CoffeeScript, which is listed in 364 company stacks and 170 developer stacks.

- No public GitHub repository available -

What is CoffeeScript?

It adds syntactic sugar inspired by Ruby, Python and Haskell in an effort to enhance JavaScript's brevity and readability. Specific additional features include list comprehension and de-structuring assignment.

What is ES6?

Goals for ECMAScript 2015 include providing better support for large applications, library creation, and for use of ECMAScript as a compilation target for other languages. Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose CoffeeScript?
Why do developers choose ES6?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use CoffeeScript?
    What companies use ES6?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with CoffeeScript?
    What tools integrate with ES6?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to CoffeeScript and ES6?
    JavaScript
    JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
    TypeScript
    TypeScript is a language for application-scale JavaScript development. It's a typed superset of JavaScript that compiles to plain JavaScript.
    Babel
    Babel will turn your ES6+ code into ES5 friendly code, so you can start using it right now without waiting for browser support.
    jQuery
    jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
    Python
    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
    See all alternatives
    Decisions about CoffeeScript and ES6
    Nick Parsons
    Nick Parsons
    Director of Developer Marketing at Stream · | 34 upvotes · 705K views
    atStreamStream
    Stream
    Stream
    Go
    Go
    JavaScript
    JavaScript
    ES6
    ES6
    Node.js
    Node.js
    Babel
    Babel
    Yarn
    Yarn
    Python
    Python
    #FrameworksFullStack
    #Languages

    Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

    We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

    We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

    Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

    #FrameworksFullStack #Languages

    See more
    Jake Stein
    Jake Stein
    CEO at Stitch · | 15 upvotes · 187.7K views
    atStitchStitch
    AngularJS
    AngularJS
    React
    React
    CoffeeScript
    CoffeeScript
    JavaScript
    JavaScript
    ES6
    ES6

    Stitch’s frontend is used to configure data sources and destinations and monitor the status of each. Although we have been using AngularJS since its early days, we recently introduced React components into our front end, which many of our developers find easier to work with. We started using CoffeeScript when it was one of the few options for a more expressive alternative to vanilla JavaScript, but today we opt to instead write new code in ES6, which we feel is a more mature alternative.

    See more
    Eli Hooten
    Eli Hooten
    CTO at Codecov · | 13 upvotes · 80K views
    atCodecovCodecov
    TypeScript
    TypeScript
    JavaScript
    JavaScript
    CoffeeScript
    CoffeeScript
    Vue.js
    Vue.js
    Visual Studio Code
    Visual Studio Code

    We chose TypeScript at Codecov when undergoing a recent rewrite of a legacy front end. Our previous front end was a mishmash of vanilla JavaScript and CoffeeScript , and was expanded upon haphazardly as the need arose. Without a unifying set of paradigms and patterns, the CoffeeScript and JavaScript setup was proving hard to maintain and expand upon by an engineering team. During a move to Vue.js , we decided to also make the move to TypeScript. Integrating TypeScript and Vue.js is fairly well understood at this point, so the setup wasn't all that difficult, and we felt that the benefits of incorporating TypeScript would outweigh the required time to set it up and get our engineering team up to speed.

    Choosing to add TypeScript has given us one more layer to rely on to help enforce code quality, good standards, and best practices within our engineering organization. One of the biggest benefits for us as an engineering team has been how well our IDEs and editors (e.g., Visual Studio Code ) integrate with and understand TypeScript . This allows developers to catch many more errors at development time instead of relying on run time. The end result is safer (from a type perspective) code and a more efficient coding experience that helps to catch and remove errors with less developer effort.

    See more
    Antonio Kobashikawa
    Antonio Kobashikawa
    Web developer | Blogger | Freelancer at Rulo Kobashikawa · | 6 upvotes · 109.9K views
    Node.js
    Node.js
    ExpressJS
    ExpressJS
    MongoDB
    MongoDB
    Vue.js
    Vue.js
    Ionic
    Ionic
    JavaScript
    JavaScript
    ES6
    ES6
    Koa
    Koa

    We are using Node.js and ExpressJS to build a REST services that is middleware of a legacy system. MongoDB as database. Vue.js helps us to make rapid UI to test use cases. Frontend is build for mobile with Ionic . We like using JavaScript and ES6 .

    I think next step could be to use Koa but I am not sure.

    See more
    Johnny Bell
    Johnny Bell
    Senior Software Engineer at StackShare · | 9 upvotes · 150.9K views
    atStackShareStackShare
    jQuery
    jQuery
    React
    React
    ES6
    ES6
    JavaScript
    JavaScript
    MobX
    MobX
    GraphQL
    GraphQL
    Apollo
    Apollo
    #Hooks🎣
    #Context

    We are always building new features and replacing old code at StackShare. Lately we have been building out new features for the frontend, and removing a lot of old jQuery code (sorry jQuery but it's time to go).

    We've mainly been using React, ES6 and JavaScript on the frontend to build out the components, and we've been slowly removing some legacy MobX and using GraphQL and Apollo for our state management, if we need to control state further than GraphQL and Apollo allows us to we use just plain React with #context , or the new fancy React #hooks🎣 .

    As we've moved towards the above tech, its really made smashing out new features and updating legacy code super fast, and really fun!

    See more
    Hampton Catlin
    Hampton Catlin
    VP of Engineering at Rent The Runway · | 10 upvotes · 117.6K views
    atRent the RunwayRent the Runway
    JavaScript
    JavaScript
    ES6
    ES6
    TypeScript
    TypeScript
    React
    React

    We use JavaScript because it's the standard for web development, especially with browser execution. And, over the years, some smart work by the W3C has taken Javascript from the most-hated-language to the okay-I-can-make-that-good. No small feat!

    Obviously, using ES6 and TypeScript is what makes it decent in browser contexts. Throw in a bit of React and now we're cooking with gas!

    See more
    React
    React
    Redux
    Redux
    FeathersJS
    FeathersJS
    HTML5
    HTML5
    JavaScript
    JavaScript
    MongoDB
    MongoDB
    Redis
    Redis
    Socket.IO
    Socket.IO
    ES6
    ES6

    I have always been interested in building a real-time multiplayer game engine that could be massively scalable, and recently I decided to start working on a MMO version of the classic "snake" game. I wanted the entire #Stack to be based on ES6 JavaScript so for the #Backend I chose to use FeathersJS with MongoDB for game/user data storage, Redis for distributed mutex and pub/sub, and Socket.IO for real-time communication. For the #Frontend I used React with Redux.js, the FeathersJS client as well as HTML5 canvas to render the view.

    See more
    Tom Klein
    Tom Klein
    CEO at Gentlent · | 4 upvotes · 46.7K views
    atGentlentGentlent
    JavaScript
    JavaScript
    Node.js
    Node.js
    PHP
    PHP
    HTML5
    HTML5
    Sass
    Sass
    nginx
    nginx
    React
    React
    PostgreSQL
    PostgreSQL
    Ubuntu
    Ubuntu
    ES6
    ES6
    TypeScript
    TypeScript
    Google Compute Engine
    Google Compute Engine
    Socket.IO
    Socket.IO
    Electron
    Electron
    Python
    Python

    Our most used programming languages are JavaScript / Node.js for it's lightweight and fast use, PHP because everyone knows it, HTML5 because you can't live without it and Sass to write great CSS. Occasionally, we use nginx as a web server and proxy, React for our UX, PostgreSQL as fast relational database, Ubuntu as server OS, ES6 and TypeScript for Node, Google Compute Engine for our infrastructure, and Socket.IO and Electron for specific use cases. We also use Python for some of our backends.

    See more
    Osamah Aldoaiss
    Osamah Aldoaiss
    UI Engineer | Maker at Triad Apparel Inc. · | 6 upvotes · 25.7K views
    atTriad Apparel Inc.Triad Apparel Inc.
    Gatsby
    Gatsby
    Lighthouse
    Lighthouse
    React
    React
    GraphQL
    GraphQL
    Node.js
    Node.js
    ES6
    ES6
    JavaScript
    JavaScript

    Gatsby has been at the core of our Shop system since day one. It gives its User the power to create fast and performant sites out-of-the-box. You barely have to do anything to get great Lighthouse results. And it all runs on ES6 JavaScript.

    The power of SSR React and then hydrating it client-side to add interactivity and App-like feel is what makes Gatsby powerful.

    It comes with a ton of plugins, that are mind-boggling: Image Processing, GraphQL, Node.js, and so much more. This is thanks to a great ecosystem, a great user-base and the revolutionary Community work, which led to the Gatsby repo to be one of the most committed to, out there.

    See more
    Gustavo Muñoz
    Gustavo Muñoz
    Web UI Developer at Globant · | 2 upvotes · 7.4K views
    Angular 2
    Angular 2
    TypeScript
    TypeScript
    React
    React
    Flow (JS)
    Flow (JS)
    JavaScript
    JavaScript
    CoffeeScript
    CoffeeScript
    #Angular
    #ECMA

    Long ago when Angular 2 evolved I had to decide between the new #Angular and TypeScript or React. I really love typing my code, but forced to use TypeScript was a bit too much. I prefer the new #ECMA standard and the evolution of the old and reliable JavaScript. So finding Flow (JS) was an incredible milestone in my career as a developer. Finally, I could use types in my code, and JavaScript with the new standard. I already had the experience of CoffeeScript, so TypeScript was not an option.

    See more
    Pedro Arnal Puente
    Pedro Arnal Puente
    CTO at La Cupula Music SL · | 8 upvotes · 27.7K views
    atLa Cupula Music SLLa Cupula Music SL
    JavaScript
    JavaScript
    jQuery
    jQuery
    jQuery UI
    jQuery UI
    Vue.js
    Vue.js
    Webpack
    Webpack
    ESLint
    ESLint
    Babel
    Babel
    ES6
    ES6

    We are phasing out jQuery and jQuery UI in favour or Vue.js and @Vue-cli so we can support building a modern, well-architectured frontend.

    The JavaScript build pipeline is supported by Webpack , and includes tools like ESLint and Babel , so we can properly support the latest ES/JS versions, with ES6 as the minimum baseline.

    See more
    Robert Zuber
    Robert Zuber
    CTO at CircleCI · | 4 upvotes · 14.9K views
    atCircleCICircleCI
    CoffeeScript
    CoffeeScript
    Hubot
    Hubot
    Go
    Go
    Slack
    Slack

    We have added very little to the CoffeeScript Hubot application – just enough to allow it to talk to our Hubot workers. The Hubot workers implement our operational management functionality and expose it to Hubot so we can get chat integration for free. We’ve also tailored the authentication and authorization code of Hubot to meet the needs of roles within our team.

    For larger tasks, we’ve got an internal #CLI written in Go that talks to the same #API as Hubot, giving access to the same functionality we have in Slack, with the addition of scripting, piping, and all of our favorite #Unix tools. When the Hubot worker recognizes the CLI is in use, it logs the commands to Slack to maintain visibility of operational changes.

    See more
    StackShare Editors
    StackShare Editors
    TypeScript
    TypeScript
    CoffeeScript
    CoffeeScript
    JavaScript
    JavaScript
    Flow (JS)
    Flow (JS)

    From a StackShare community member: "We are looking to rewrite our outdated front-end with TypeScript. Right now we have a mix of CoffeeScript and vanilla JavaScript. I have read that adopting TypeScript can help enforce better code quality, and best practices. I also heard good things about Flow (JS). Which one would you recommend and why?"

    See more
    Ali Soueidan
    Ali Soueidan
    Creative Web Developer at Ali Soueidan · | 18 upvotes · 491.3K views
    npm
    npm
    Vue.js
    Vue.js
    vuex
    vuex
    JavaScript
    JavaScript
    Pug
    Pug
    Sass
    Sass
    JSON
    JSON
    Git
    Git
    GitHub
    GitHub
    ES6
    ES6
    Asana
    Asana
    Adobe Illustrator
    Adobe Illustrator
    PHP
    PHP
    Babel
    Babel

    Application and Data: Since my personal website ( https://alisoueidan.com ) is a SPA I've chosen to use Vue.js, as a framework to create it. After a short skeptical phase I immediately felt in love with the single file component concept! I also used vuex for state management, which makes working with several components, which are communicating with each other even more fun and convenient to use. Of course, using Vue requires using JavaScript as well, since it is the basis of it.

    For markup and style, I used Pug and Sass, since they’re the perfect match to me. I love the clean and strict syntax of both of them and even more that their structure is almost similar. Also, both of them come with an expanded functionality such as mixins, loops and so on related to their “siblings” (HTML and CSS). Both of them require nesting and prevent untidy code, which can be a huge advantage when working in teams. I used JSON to store data (since the data quantity on my website is moderate) – JSON works also good in combo with Pug, using for loops, based on the JSON Objects for example.

    To send my contact form I used PHP, since sending emails using PHP is still relatively convenient, simple and easy done.

    DevOps: Of course, I used Git to do my version management (which I even do in smaller projects like my website just have an additional backup of my code). On top of that I used GitHub since it now supports private repository for free accounts (which I am using for my own). I use Babel to use ES6 functionality such as arrow functions and so on, and still don’t losing cross browser compatibility.

    Side note: I used npm for package management. 🎉

    *Business Tools: * I use Asana to organize my project. This is a big advantage to me, even if I work alone, since “private” projects can get interrupted for some time. By using Asana I still know (even after month of not touching a project) what I’ve done, on which task I was at last working on and what still is to do. Working in Teams (for enterprise I’d take on Jira instead) of course Asana is a Tool which I really love to use as well. All the graphics on my website are SVG which I have created with Adobe Illustrator and adjusted within the SVG code or by using JavaScript or CSS (SASS).

    See more
    Interest over time
    Reviews of CoffeeScript and ES6
    No reviews found
    How developers use CoffeeScript and ES6
    Avatar of Kurzor, s.r.o.
    Kurzor, s.r.o. uses ES6ES6

    We started using CoffeeScript years ago, so the switch to ES6 is quite natural in our team. ES6 of course advances the JS standard to a level of an advanced language. We are using it today simply because it: 1. helps to keep the code shorter, 2. integrates easily with JSX, 3. helps to deal with immutable using const.

    Avatar of Jake Taylor
    Jake Taylor uses ES6ES6

    ES6 is a new-ish, modern form of JavaScript that adds in extra functionality that make code cleaner and easier to work with, such as arrow functions, const and let declarations, array helper methods, object/array destructuring etc.

    Avatar of Ryan VanBelkum
    Ryan VanBelkum uses ES6ES6

    ES6 (ES2015) is a huge improvement to the javascript spec. These additions are heavily leveraged in React development, such as spread operators, fat arrow functions, and classes.

    Avatar of Oomba
    Oomba uses CoffeeScriptCoffeeScript

    All of our Javascript code is first written in CoffeeScript for ease of reading / writing. It is compiled to Javascript before being minified and served to the client.

    Avatar of opening.io
    opening.io uses CoffeeScriptCoffeeScript

    All front-end / back-end is driven by Coffeescript. For the main ReactJS functionality JSX is embedded with coffee in .cjsx files / handled by Browserify.

    Avatar of Jeff Flynn
    Jeff Flynn uses CoffeeScriptCoffeeScript

    We like CoffeeScript because it's more readable, we use it because we have a lot of libraries and functions already (plays nicely with Rails, too)

    Avatar of Mick Dekkers
    Mick Dekkers uses ES6ES6

    ES6/ES2015+ makes JavaScript a pleasure to write. Arrow functions, template literals and ES modules especially. RIP CoffeeScript.

    Avatar of Ataccama
    Ataccama uses ES6ES6

    ES6 brings some sweet features to the language. Our favourites are lambda-expressions, block-scoped consts and lets and Promises.

    Avatar of Chris Hartwig
    Chris Hartwig uses CoffeeScriptCoffeeScript

    All our code is CoffeeScript, blending seemlessly in our JS stack

    Avatar of Publitory
    Publitory uses CoffeeScriptCoffeeScript

    Javascript is a hell. We use coffeescript for its readability.

    How much does CoffeeScript cost?
    How much does ES6 cost?
    Pricing unavailable
    Pricing unavailable
    News about CoffeeScript
    More news
    News about ES6
    More news