Skip to content

Commit 726c085

Browse files
Add Integrations section to docs (#5334)
Co-authored-by: Geoffrey Booth <[email protected]>
1 parent 887a617 commit 726c085

13 files changed

+163
-6
lines changed

docs/v2/index.html

Lines changed: 92 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -561,6 +561,7 @@
561561
<div class="navbar-nav mr-auto d-none d-lg-flex">
562562
<a href="#try" id="try-link" class="nav-item nav-link" data-toggle="try">Try CoffeeScript</a>
563563
<a href="#language" class="nav-item nav-link" data-close="try">Language Reference</a>
564+
<a href="#integrations" class="nav-item nav-link" data-close="try">Integrations</a>
564565
<a href="#resources" class="nav-item nav-link" data-close="try">Resources</a>
565566
<a href="https://github.com/jashkenas/coffeescript/" class="nav-item nav-link" data-close="try">GitHub
566567
</a>
@@ -644,7 +645,14 @@
644645
<a href="#source-maps" class="nav-link" data-action="sidebar-nav">Source Maps</a>
645646
<a href="#cake" class="nav-link" data-action="sidebar-nav">Cake, and Cakefiles</a>
646647
<a href="#scripts" class="nav-link" data-action="sidebar-nav"><code>"text/coffeescript"</code> Script Tags</a>
647-
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
648+
<a href="#integrations" class="nav-link" data-action="sidebar-nav">Integrations</a>
649+
<nav class="nav flex-column">
650+
<a href="#build-tools" class="nav-link" data-action="sidebar-nav">Build Tools</a>
651+
<a href="#code-editors" class="nav-link" data-action="sidebar-nav">Code Editors</a>
652+
<a href="#frameworks" class="nav-link" data-action="sidebar-nav">Frameworks</a>
653+
<a href="#linters-and-formatting" class="nav-link" data-action="sidebar-nav">Linters and Formatting</a>
654+
<a href="#testing" class="nav-link" data-action="sidebar-nav">Testing</a>
655+
</nav>
648656
<a href="#resources" class="nav-link" data-action="sidebar-nav">Resources</a>
649657
<nav class="nav flex-column">
650658
<a href="#books" class="nav-link" data-action="sidebar-nav">Books</a>
@@ -674,6 +682,7 @@
674682
<a href="#breaking-changes-argument-parsing-and-shebang-lines" class="nav-link" data-action="sidebar-nav">Argument Parsing and <code>#!</code> Lines</a>
675683
</nav>
676684
<a href="#changelog" class="nav-link" data-action="sidebar-nav">Changelog</a>
685+
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
677686
<a href="/v1/" class="nav-link" data-action="sidebar-nav">Version 1.x Documentation</a>
678687
</nav>
679688
</nav>
@@ -904,6 +913,7 @@ <h3>Compatibility</h3>
904913
<li><a href="#modules">Modules</a> are supported by Node 12+ with <code>&quot;type&quot;: &quot;module&quot;</code> in your project’s <code>package.json</code>.</li>
905914
</ul>
906915
<p>This list may be incomplete, and excludes versions of Node that support newer features behind flags; please refer to <a href="http://node.green/">node.green</a> for full details. You can <a href="test.html">run the tests in your browser</a> to see what your browser supports. It is your responsibility to ensure that your runtime supports the modern features you use; or that you <a href="#transpilation">transpile</a> your code. When in doubt, transpile.</p>
916+
<p>For compatibility with other JavaScript frameworks and tools, see <a href="#integrations">Integrations</a>.</p>
907917

908918
</section>
909919
</section>
@@ -1053,7 +1063,7 @@ <h3>Node.js</h3>
10531063
</section>
10541064
<section id="transpilation">
10551065
<h3>Transpilation</h3>
1056-
<p>CoffeeScript 2 generates JavaScript that uses the latest, modern syntax. The runtime or browsers where you want your code to run <a href="#compatibility">might not support all of that syntax</a>. In that case, we want to convert modern JavaScript into older JavaScript that will run in older versions of Node or older browsers; for example, <code>{ a } = obj</code> into <code>a = obj.a</code>. This is done via transpilers like <a href="http://babeljs.io/">Babel</a>, <a href="https://buble.surge.sh/">Bublé</a> or <a href="https://github.com/google/traceur-compiler">Traceur Compiler</a>.</p>
1066+
<p>CoffeeScript 2 generates JavaScript that uses the latest, modern syntax. The runtime or browsers where you want your code to run <a href="#compatibility">might not support all of that syntax</a>. In that case, we want to convert modern JavaScript into older JavaScript that will run in older versions of Node or older browsers; for example, <code>{ a } = obj</code> into <code>a = obj.a</code>. This is done via transpilers like <a href="http://babeljs.io/">Babel</a>, <a href="https://buble.surge.sh/">Bublé</a> or <a href="https://github.com/google/traceur-compiler">Traceur Compiler</a>. See <a href="#build-tools">Build Tools</a>.</p>
10571067
<h4>Quickstart</h4>
10581068
<p>From the root of your project:</p>
10591069
<blockquote class="uneditable-code-block"><pre><code class="language-bash">npm install --save-dev @babel/core @babel/preset-env
@@ -4859,6 +4869,85 @@ <h2><code>&quot;text/coffeescript&quot;</code> Script Tags</h2>
48594869
<p>The usual caveats about CoffeeScript apply — your inline scripts will run within a closure wrapper, so if you want to expose global variables or functions, attach them to the <code>window</code> object.</p>
48604870

48614871
</section>
4872+
<section id="integrations">
4873+
<h2>Integrations</h2>
4874+
<p>CoffeeScript is part of the vast JavaScript ecosystem, and many libraries help integrate CoffeeScript with JavaScript. Major projects, especially projects updated to work with CoffeeScript 2, are listed here; more can be found in the <a href="https://github.com/jashkenas/coffeescript/wiki">wiki pages</a>. If there’s a project that you feel should be added to this section, please open an issue or <a href="https://github.com/jashkenas/coffeescript/wiki/%5BHowTo%5D-Update-the-docs">pull request</a>. Projects are listed in alphabetical order by category.</p>
4875+
4876+
<section id="build-tools">
4877+
<h3>Build Tools</h3>
4878+
<ul>
4879+
<li>
4880+
<p><a href="http://browserify.org">Browserify</a> with <a href="https://github.com/jnordberg/coffeeify">coffeeify</a></p>
4881+
</li>
4882+
<li>
4883+
<p><a href="https://gruntjs.com">Grunt</a> with <a href="https://github.com/gruntjs/grunt-contrib-coffee">grunt-contrib-coffee</a></p>
4884+
</li>
4885+
<li>
4886+
<p><a href="https://gulpjs.com">Gulp</a> with <a href="https://github.com/gulp-community/gulp-coffee">gulp-coffee</a></p>
4887+
</li>
4888+
<li>
4889+
<p><a href="https://parceljs.org">Parcel</a> with <a href="https://github.com/parcel-bundler/parcel/tree/v2/packages/transformers/coffeescript">transformer-coffeescript</a></p>
4890+
</li>
4891+
<li>
4892+
<p><a href="https://rollupjs.org">Rollup</a> with <a href="https://github.com/lautis/rollup-plugin-coffee-script">rollup-plugin-coffee-script</a></p>
4893+
</li>
4894+
<li>
4895+
<p><a href="https://webpack.js.org">Webpack</a> with <a href="https://github.com/webpack-contrib/coffee-loader">coffee-loader</a></p>
4896+
</li>
4897+
</ul>
4898+
4899+
</section>
4900+
<section id="code-editors">
4901+
<h3>Code Editors</h3>
4902+
<ul>
4903+
<li>
4904+
<p><a href="https://atom.io">Atom</a> <a href="https://atom.io/packages/search?q=coffeescript">packages</a></p>
4905+
</li>
4906+
<li>
4907+
<p><a href="https://sublimetext.com">Sublime Text</a> <a href="https://packagecontrol.io/search/coffeescript">packages</a></p>
4908+
</li>
4909+
<li>
4910+
<p><a href="https://code.visualstudio.com">Visual Studio Code</a> <a href="https://marketplace.visualstudio.com/search?target=VSCode&amp;term=coffeescript">extensions</a></p>
4911+
</li>
4912+
</ul>
4913+
4914+
</section>
4915+
<section id="frameworks">
4916+
<h3>Frameworks</h3>
4917+
<ul>
4918+
<li>
4919+
<p><a href="https://emberjs.com">Ember</a>
4920+
with <a href="https://github.com/kimroen/ember-cli-coffeescript">ember-cli-coffeescript</a></p>
4921+
</li>
4922+
<li>
4923+
<p><a href="https://meteor.com">Meteor</a> with <a href="https://atmospherejs.com/meteor/coffeescript-compiler">coffeescript-compiler</a></p>
4924+
</li>
4925+
</ul>
4926+
4927+
</section>
4928+
<section id="linters-and-formatting">
4929+
<h3>Linters and Formatting</h3>
4930+
<ul>
4931+
<li>
4932+
<p><a href="https://coffeelint.github.io/">CoffeeLint</a></p>
4933+
</li>
4934+
<li>
4935+
<p><a href="https://eslint.org">ESLint</a> with <a href="https://github.com/helixbass/eslint-plugin-coffee">eslint-plugin-coffee</a></p>
4936+
</li>
4937+
<li>
4938+
<p><a href="https://prettier.io">Prettier</a> with <a href="https://github.com/helixbass/prettier-plugin-coffeescript">prettier-plugin-coffeescript</a></p>
4939+
</li>
4940+
</ul>
4941+
4942+
</section>
4943+
<section id="testing">
4944+
<h3>Testing</h3>
4945+
<ul>
4946+
<li><a href="https://jestjs.io">Jest</a> with <a href="https://github.com/danielbayley/jest-preset-coffeescript">jest-preset-coffeescript</a></li>
4947+
</ul>
4948+
4949+
</section>
4950+
</section>
48624951
<section id="resources">
48634952
<h2>Resources</h2>
48644953
<ul>
@@ -4868,7 +4957,7 @@ <h2>Resources</h2>
48684957
<li><a href="https://groups.google.com/forum/#!forum/coffeescript">CoffeeScript Google Group</a><br>
48694958
If you’d like to ask a question, the mailing list is a good place to get help.</li>
48704959
<li><a href="https://github.com/jashkenas/coffeescript/wiki">The CoffeeScript Wiki</a><br>
4871-
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki. The wiki also serves as a directory of handy <a href="https://github.com/jashkenas/coffeescript/wiki/Text-editor-plugins">text editor extensions</a>, <a href="https://github.com/jashkenas/coffeescript/wiki/Web-framework-plugins">web framework plugins</a>, and general <a href="https://github.com/jashkenas/coffeescript/wiki/Build-tools">CoffeeScript build tools</a>.</li>
4960+
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki.</li>
48724961
<li><a href="https://github.com/jashkenas/coffeescript/wiki/FAQ">The FAQ</a><br>
48734962
Perhaps your CoffeeScript-related question has been asked before. Check the FAQ first.</li>
48744963
<li><a href="http://js2.coffee/">JS2Coffee</a><br>

documentation/sections/compatibility.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ Most modern JavaScript features that CoffeeScript supports can run natively in N
99
* [Modules](#modules) are supported by Node 12+ with `"type": "module"` in your project’s `package.json`.
1010

1111
This list may be incomplete, and excludes versions of Node that support newer features behind flags; please refer to [node.green](http://node.green/) for full details. You can [run the tests in your browser](test.html) to see what your browser supports. It is your responsibility to ensure that your runtime supports the modern features you use; or that you [transpile](#transpilation) your code. When in doubt, transpile.
12+
13+
For compatibility with other JavaScript frameworks and tools, see [Integrations](#integrations).
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## Integrations
2+
3+
CoffeeScript is part of the vast JavaScript ecosystem, and many libraries help integrate CoffeeScript with JavaScript. Major projects, especially projects updated to work with CoffeeScript 2, are listed here; more can be found in the [wiki pages](https://github.com/jashkenas/coffeescript/wiki). If there’s a project that you feel should be added to this section, please open an issue or [pull request](https://github.com/jashkenas/coffeescript/wiki/%5BHowTo%5D-Update-the-docs). Projects are listed in alphabetical order by category.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### Build Tools
2+
3+
* [Browserify](http://browserify.org) with [coffeeify](https://github.com/jnordberg/coffeeify)
4+
5+
* [Grunt](https://gruntjs.com) with [grunt-contrib-coffee](https://github.com/gruntjs/grunt-contrib-coffee)
6+
7+
* [Gulp](https://gulpjs.com) with [gulp-coffee](https://github.com/gulp-community/gulp-coffee)
8+
9+
* [Parcel](https://parceljs.org) with [transformer-coffeescript](https://github.com/parcel-bundler/parcel/tree/v2/packages/transformers/coffeescript)
10+
11+
* [Rollup](https://rollupjs.org) with [rollup-plugin-coffee-script](https://github.com/lautis/rollup-plugin-coffee-script)
12+
13+
* [Webpack](https://webpack.js.org) with [coffee-loader](https://github.com/webpack-contrib/coffee-loader)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
### Code Editors
2+
3+
* [Atom](https://atom.io) [packages](https://atom.io/packages/search?q=coffeescript)
4+
5+
* [Sublime Text](https://sublimetext.com) [packages](https://packagecontrol.io/search/coffeescript)
6+
7+
* [Visual Studio Code](https://code.visualstudio.com) [extensions](https://marketplace.visualstudio.com/search?target=VSCode&term=coffeescript)
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
### Frameworks
2+
3+
* [Ember](https://emberjs.com)
4+
with [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript)
5+
6+
* [Meteor](https://meteor.com) with [coffeescript-compiler](https://atmospherejs.com/meteor/coffeescript-compiler)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
### Linters and Formatting
2+
3+
* [CoffeeLint](https://coffeelint.github.io/)
4+
5+
* [ESLint](https://eslint.org) with [eslint-plugin-coffee](https://github.com/helixbass/eslint-plugin-coffee)
6+
7+
* [Prettier](https://prettier.io) with [prettier-plugin-coffeescript](https://github.com/helixbass/prettier-plugin-coffeescript)
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
### Testing
2+
3+
* [Jest](https://jestjs.io) with [jest-preset-coffeescript](https://github.com/danielbayley/jest-preset-coffeescript)

documentation/sections/resources.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* [CoffeeScript Google Group](https://groups.google.com/forum/#!forum/coffeescript)<br>
77
If you’d like to ask a question, the mailing list is a good place to get help.
88
* [The CoffeeScript Wiki](https://github.com/jashkenas/coffeescript/wiki)<br>
9-
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki. The wiki also serves as a directory of handy [text editor extensions](https://github.com/jashkenas/coffeescript/wiki/Text-editor-plugins), [web framework plugins](https://github.com/jashkenas/coffeescript/wiki/Web-framework-plugins), and general [CoffeeScript build tools](https://github.com/jashkenas/coffeescript/wiki/Build-tools).
9+
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki.
1010
* [The FAQ](https://github.com/jashkenas/coffeescript/wiki/FAQ)<br>
1111
Perhaps your CoffeeScript-related question has been asked before. Check the FAQ first.
1212
* [JS2Coffee](http://js2.coffee/)<br>

documentation/sections/transpilation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
### Transpilation
22

3-
CoffeeScript 2 generates JavaScript that uses the latest, modern syntax. The runtime or browsers where you want your code to run [might not support all of that syntax](#compatibility). In that case, we want to convert modern JavaScript into older JavaScript that will run in older versions of Node or older browsers; for example, `{ a } = obj` into `a = obj.a`. This is done via transpilers like [Babel](http://babeljs.io/), [Bublé](https://buble.surge.sh/) or [Traceur Compiler](https://github.com/google/traceur-compiler).
3+
CoffeeScript 2 generates JavaScript that uses the latest, modern syntax. The runtime or browsers where you want your code to run [might not support all of that syntax](#compatibility). In that case, we want to convert modern JavaScript into older JavaScript that will run in older versions of Node or older browsers; for example, `{ a } = obj` into `a = obj.a`. This is done via transpilers like [Babel](http://babeljs.io/), [Bublé](https://buble.surge.sh/) or [Traceur Compiler](https://github.com/google/traceur-compiler). See [Build Tools](#build-tools).
44

55
#### Quickstart
66

documentation/site/body.html

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,24 @@
142142
<section id="scripts">
143143
<%= htmlFor('scripts') %>
144144
</section>
145+
<section id="integrations">
146+
<%= htmlFor('integrations') %>
147+
<section id="build-tools">
148+
<%= htmlFor('integrations_build_tools') %>
149+
</section>
150+
<section id="code-editors">
151+
<%= htmlFor('integrations_code_editors') %>
152+
</section>
153+
<section id="frameworks">
154+
<%= htmlFor('integrations_frameworks') %>
155+
</section>
156+
<section id="linters-and-formatting">
157+
<%= htmlFor('integrations_linters_and_formatting') %>
158+
</section>
159+
<section id="testing">
160+
<%= htmlFor('integrations_testing') %>
161+
</section>
162+
</section>
145163
<section id="resources">
146164
<%= htmlFor('resources') %>
147165
<section id="books">

documentation/site/navbar.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<div class="navbar-nav mr-auto d-none d-lg-flex">
99
<a href="#try" id="try-link" class="nav-item nav-link" data-toggle="try">Try CoffeeScript</a>
1010
<a href="#language" class="nav-item nav-link" data-close="try">Language Reference</a>
11+
<a href="#integrations" class="nav-item nav-link" data-close="try">Integrations</a>
1112
<a href="#resources" class="nav-item nav-link" data-close="try">Resources</a>
1213
<a href="https://github.com/jashkenas/coffeescript/" class="nav-item nav-link" data-close="try">GitHub
1314
</a>

documentation/site/sidebar.html

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,14 @@
5050
<a href="#source-maps" class="nav-link" data-action="sidebar-nav">Source Maps</a>
5151
<a href="#cake" class="nav-link" data-action="sidebar-nav">Cake, and Cakefiles</a>
5252
<a href="#scripts" class="nav-link" data-action="sidebar-nav"><code>"text/coffeescript"</code> Script Tags</a>
53-
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
53+
<a href="#integrations" class="nav-link" data-action="sidebar-nav">Integrations</a>
54+
<nav class="nav flex-column">
55+
<a href="#build-tools" class="nav-link" data-action="sidebar-nav">Build Tools</a>
56+
<a href="#code-editors" class="nav-link" data-action="sidebar-nav">Code Editors</a>
57+
<a href="#frameworks" class="nav-link" data-action="sidebar-nav">Frameworks</a>
58+
<a href="#linters-and-formatting" class="nav-link" data-action="sidebar-nav">Linters and Formatting</a>
59+
<a href="#testing" class="nav-link" data-action="sidebar-nav">Testing</a>
60+
</nav>
5461
<a href="#resources" class="nav-link" data-action="sidebar-nav">Resources</a>
5562
<nav class="nav flex-column">
5663
<a href="#books" class="nav-link" data-action="sidebar-nav">Books</a>
@@ -80,6 +87,7 @@
8087
<a href="#breaking-changes-argument-parsing-and-shebang-lines" class="nav-link" data-action="sidebar-nav">Argument Parsing and <code>#!</code> Lines</a>
8188
</nav>
8289
<a href="#changelog" class="nav-link" data-action="sidebar-nav">Changelog</a>
90+
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
8391
<a href="/v1/" class="nav-link" data-action="sidebar-nav">Version 1.x Documentation</a>
8492
</nav>
8593
</nav>

0 commit comments

Comments
 (0)