CoffeeScript logo

CoffeeScript

A little language that compiles into JavaScript
2K
993
+ 1
1K

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.
CoffeeScript is a tool in the Languages category of a tech stack.
CoffeeScript is an open source tool with 15.4K GitHub stars and 2K GitHub forks. Here’s a link to CoffeeScript's open source repository on GitHub

Who uses CoffeeScript?

Companies
894 companies reportedly use CoffeeScript in their tech stacks, including Typeform, thoughtbot, and Trello.

Developers
1021 developers on StackShare have stated that they use CoffeeScript.

CoffeeScript Integrations

Hexo, Prepros, Hamlet, XenForo, and decaffeinate are some of the popular tools that integrate with CoffeeScript. Here's a list of all 6 tools that integrate with CoffeeScript.

Why developers like CoffeeScript?

Here’s a list of reasons why companies and developers use CoffeeScript
CoffeeScript Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose CoffeeScript in their tech stack.

Jake Stein
Jake Stein
CEO at Stitch · | 15 upvotes · 93.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 · | 12 upvotes · 61.3K 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
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
Robert Zuber
Robert Zuber
CTO at CircleCI · | 4 upvotes · 9.8K 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
GitHub
GitHub
gulp
gulp
CoffeeScript
CoffeeScript

In 2014, PagerDuty struggled with safely releasing reliable mobile applications to users due to some issues with how the code was being packaged and handled.

PagerDuty’s mobile apps are hybrid and used Cordova to share code between platforms. Coding was straightforward but packaging was not, as a separated Gulp-based build process was also being used. The PagerDuty team took a page from Java and started creating software artifacts.

Rather than checking in transformed code or publishing modules to NPM, the team started creating zipped-up build artifacts, which coincided perfectly with GitHub's Releases feature which arrived in 2013. So despite JavaScript lacking a standard packaged app format like a JAR, PagerDuty was still able to improve the build times and sizes of their mobile apps.

See more
Gustavo Muñoz
Gustavo Muñoz
Web UI Developer at Globant · | 2 upvotes · 5.7K 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

CoffeeScript's Features

  • String Interpolation
  • Statement Modifiers
  • Callback Handling
  • Comprehensions
  • The Fat Arrow
  • Scoping
  • Clean JavaScript Output.

CoffeeScript Alternatives & Comparisons

What are some alternatives to CoffeeScript?
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.
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.
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.
See all alternatives

CoffeeScript's Followers
993 developers follow CoffeeScript to keep up with related blogs and decisions.
Joel Byrnes
Herbert Braun
Parviz Rozikov
Lalit Nayyar
M Can Yılmaz
ken okamura
Srinath GS
Piyakorn Ungamrung
André Souza
EMRAH GUNES