mirror of
https://github.com/jashkenas/coffeescript.git
synced 2026-05-03 03:00:14 -04:00
Add Integrations section to docs (#5334)
Co-authored-by: Geoffrey Booth <webadmin@geoffreybooth.com>
This commit is contained in:
@@ -561,6 +561,7 @@ textarea {
|
||||
<div class="navbar-nav mr-auto d-none d-lg-flex">
|
||||
<a href="#try" id="try-link" class="nav-item nav-link" data-toggle="try">Try CoffeeScript</a>
|
||||
<a href="#language" class="nav-item nav-link" data-close="try">Language Reference</a>
|
||||
<a href="#integrations" class="nav-item nav-link" data-close="try">Integrations</a>
|
||||
<a href="#resources" class="nav-item nav-link" data-close="try">Resources</a>
|
||||
<a href="https://github.com/jashkenas/coffeescript/" class="nav-item nav-link" data-close="try">GitHub
|
||||
</a>
|
||||
@@ -644,7 +645,14 @@ textarea {
|
||||
<a href="#source-maps" class="nav-link" data-action="sidebar-nav">Source Maps</a>
|
||||
<a href="#cake" class="nav-link" data-action="sidebar-nav">Cake, and Cakefiles</a>
|
||||
<a href="#scripts" class="nav-link" data-action="sidebar-nav"><code>"text/coffeescript"</code> Script Tags</a>
|
||||
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
|
||||
<a href="#integrations" class="nav-link" data-action="sidebar-nav">Integrations</a>
|
||||
<nav class="nav flex-column">
|
||||
<a href="#build-tools" class="nav-link" data-action="sidebar-nav">Build Tools</a>
|
||||
<a href="#code-editors" class="nav-link" data-action="sidebar-nav">Code Editors</a>
|
||||
<a href="#frameworks" class="nav-link" data-action="sidebar-nav">Frameworks</a>
|
||||
<a href="#linters-and-formatting" class="nav-link" data-action="sidebar-nav">Linters and Formatting</a>
|
||||
<a href="#testing" class="nav-link" data-action="sidebar-nav">Testing</a>
|
||||
</nav>
|
||||
<a href="#resources" class="nav-link" data-action="sidebar-nav">Resources</a>
|
||||
<nav class="nav flex-column">
|
||||
<a href="#books" class="nav-link" data-action="sidebar-nav">Books</a>
|
||||
@@ -674,6 +682,7 @@ textarea {
|
||||
<a href="#breaking-changes-argument-parsing-and-shebang-lines" class="nav-link" data-action="sidebar-nav">Argument Parsing and <code>#!</code> Lines</a>
|
||||
</nav>
|
||||
<a href="#changelog" class="nav-link" data-action="sidebar-nav">Changelog</a>
|
||||
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
|
||||
<a href="/v1/" class="nav-link" data-action="sidebar-nav">Version 1.x Documentation</a>
|
||||
</nav>
|
||||
</nav>
|
||||
@@ -904,6 +913,7 @@ cubes = (function() {
|
||||
<li><a href="#modules">Modules</a> are supported by Node 12+ with <code>"type": "module"</code> in your project’s <code>package.json</code>.</li>
|
||||
</ul>
|
||||
<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>
|
||||
<p>For compatibility with other JavaScript frameworks and tools, see <a href="#integrations">Integrations</a>.</p>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
@@ -1053,7 +1063,7 @@ App = <span class="built_in">require</span> <span class="string">'./app
|
||||
</section>
|
||||
<section id="transpilation">
|
||||
<h3>Transpilation</h3>
|
||||
<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>
|
||||
<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>
|
||||
<h4>Quickstart</h4>
|
||||
<p>From the root of your project:</p>
|
||||
<blockquote class="uneditable-code-block"><pre><code class="language-bash">npm install --save-dev @babel/core @babel/preset-env
|
||||
@@ -4859,6 +4869,85 @@ task('build:parser', 'rebuild the Jison parser', function(options) {
|
||||
<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>
|
||||
|
||||
</section>
|
||||
<section id="integrations">
|
||||
<h2>Integrations</h2>
|
||||
<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>
|
||||
|
||||
<section id="build-tools">
|
||||
<h3>Build Tools</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<p><a href="http://browserify.org">Browserify</a> with <a href="https://github.com/jnordberg/coffeeify">coffeeify</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://gruntjs.com">Grunt</a> with <a href="https://github.com/gruntjs/grunt-contrib-coffee">grunt-contrib-coffee</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://gulpjs.com">Gulp</a> with <a href="https://github.com/gulp-community/gulp-coffee">gulp-coffee</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<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>
|
||||
</li>
|
||||
<li>
|
||||
<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>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://webpack.js.org">Webpack</a> with <a href="https://github.com/webpack-contrib/coffee-loader">coffee-loader</a></p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section id="code-editors">
|
||||
<h3>Code Editors</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<p><a href="https://atom.io">Atom</a> <a href="https://atom.io/packages/search?q=coffeescript">packages</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://sublimetext.com">Sublime Text</a> <a href="https://packagecontrol.io/search/coffeescript">packages</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://code.visualstudio.com">Visual Studio Code</a> <a href="https://marketplace.visualstudio.com/search?target=VSCode&term=coffeescript">extensions</a></p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section id="frameworks">
|
||||
<h3>Frameworks</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<p><a href="https://emberjs.com">Ember</a>
|
||||
with <a href="https://github.com/kimroen/ember-cli-coffeescript">ember-cli-coffeescript</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://meteor.com">Meteor</a> with <a href="https://atmospherejs.com/meteor/coffeescript-compiler">coffeescript-compiler</a></p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section id="linters-and-formatting">
|
||||
<h3>Linters and Formatting</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<p><a href="https://coffeelint.github.io/">CoffeeLint</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://eslint.org">ESLint</a> with <a href="https://github.com/helixbass/eslint-plugin-coffee">eslint-plugin-coffee</a></p>
|
||||
</li>
|
||||
<li>
|
||||
<p><a href="https://prettier.io">Prettier</a> with <a href="https://github.com/helixbass/prettier-plugin-coffeescript">prettier-plugin-coffeescript</a></p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section id="testing">
|
||||
<h3>Testing</h3>
|
||||
<ul>
|
||||
<li><a href="https://jestjs.io">Jest</a> with <a href="https://github.com/danielbayley/jest-preset-coffeescript">jest-preset-coffeescript</a></li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
<section id="resources">
|
||||
<h2>Resources</h2>
|
||||
<ul>
|
||||
@@ -4868,7 +4957,7 @@ Bug reports, feature proposals, and ideas for changes to the language belong her
|
||||
<li><a href="https://groups.google.com/forum/#!forum/coffeescript">CoffeeScript Google Group</a><br>
|
||||
If you’d like to ask a question, the mailing list is a good place to get help.</li>
|
||||
<li><a href="https://github.com/jashkenas/coffeescript/wiki">The CoffeeScript Wiki</a><br>
|
||||
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>
|
||||
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki.</li>
|
||||
<li><a href="https://github.com/jashkenas/coffeescript/wiki/FAQ">The FAQ</a><br>
|
||||
Perhaps your CoffeeScript-related question has been asked before. Check the FAQ first.</li>
|
||||
<li><a href="http://js2.coffee/">JS2Coffee</a><br>
|
||||
|
||||
@@ -9,3 +9,5 @@ Most modern JavaScript features that CoffeeScript supports can run natively in N
|
||||
* [Modules](#modules) are supported by Node 12+ with `"type": "module"` in your project’s `package.json`.
|
||||
|
||||
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.
|
||||
|
||||
For compatibility with other JavaScript frameworks and tools, see [Integrations](#integrations).
|
||||
|
||||
3
documentation/sections/integrations.md
Normal file
3
documentation/sections/integrations.md
Normal file
@@ -0,0 +1,3 @@
|
||||
## Integrations
|
||||
|
||||
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.
|
||||
13
documentation/sections/integrations_build_tools.md
Normal file
13
documentation/sections/integrations_build_tools.md
Normal file
@@ -0,0 +1,13 @@
|
||||
### Build Tools
|
||||
|
||||
* [Browserify](http://browserify.org) with [coffeeify](https://github.com/jnordberg/coffeeify)
|
||||
|
||||
* [Grunt](https://gruntjs.com) with [grunt-contrib-coffee](https://github.com/gruntjs/grunt-contrib-coffee)
|
||||
|
||||
* [Gulp](https://gulpjs.com) with [gulp-coffee](https://github.com/gulp-community/gulp-coffee)
|
||||
|
||||
* [Parcel](https://parceljs.org) with [transformer-coffeescript](https://github.com/parcel-bundler/parcel/tree/v2/packages/transformers/coffeescript)
|
||||
|
||||
* [Rollup](https://rollupjs.org) with [rollup-plugin-coffee-script](https://github.com/lautis/rollup-plugin-coffee-script)
|
||||
|
||||
* [Webpack](https://webpack.js.org) with [coffee-loader](https://github.com/webpack-contrib/coffee-loader)
|
||||
7
documentation/sections/integrations_code_editors.md
Normal file
7
documentation/sections/integrations_code_editors.md
Normal file
@@ -0,0 +1,7 @@
|
||||
### Code Editors
|
||||
|
||||
* [Atom](https://atom.io) [packages](https://atom.io/packages/search?q=coffeescript)
|
||||
|
||||
* [Sublime Text](https://sublimetext.com) [packages](https://packagecontrol.io/search/coffeescript)
|
||||
|
||||
* [Visual Studio Code](https://code.visualstudio.com) [extensions](https://marketplace.visualstudio.com/search?target=VSCode&term=coffeescript)
|
||||
6
documentation/sections/integrations_frameworks.md
Normal file
6
documentation/sections/integrations_frameworks.md
Normal file
@@ -0,0 +1,6 @@
|
||||
### Frameworks
|
||||
|
||||
* [Ember](https://emberjs.com)
|
||||
with [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript)
|
||||
|
||||
* [Meteor](https://meteor.com) with [coffeescript-compiler](https://atmospherejs.com/meteor/coffeescript-compiler)
|
||||
@@ -0,0 +1,7 @@
|
||||
### Linters and Formatting
|
||||
|
||||
* [CoffeeLint](https://coffeelint.github.io/)
|
||||
|
||||
* [ESLint](https://eslint.org) with [eslint-plugin-coffee](https://github.com/helixbass/eslint-plugin-coffee)
|
||||
|
||||
* [Prettier](https://prettier.io) with [prettier-plugin-coffeescript](https://github.com/helixbass/prettier-plugin-coffeescript)
|
||||
3
documentation/sections/integrations_testing.md
Normal file
3
documentation/sections/integrations_testing.md
Normal file
@@ -0,0 +1,3 @@
|
||||
### Testing
|
||||
|
||||
* [Jest](https://jestjs.io) with [jest-preset-coffeescript](https://github.com/danielbayley/jest-preset-coffeescript)
|
||||
@@ -6,7 +6,7 @@
|
||||
* [CoffeeScript Google Group](https://groups.google.com/forum/#!forum/coffeescript)<br>
|
||||
If you’d like to ask a question, the mailing list is a good place to get help.
|
||||
* [The CoffeeScript Wiki](https://github.com/jashkenas/coffeescript/wiki)<br>
|
||||
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).
|
||||
If you’ve ever learned a neat CoffeeScript tip or trick, or ran into a gotcha — share it on the wiki.
|
||||
* [The FAQ](https://github.com/jashkenas/coffeescript/wiki/FAQ)<br>
|
||||
Perhaps your CoffeeScript-related question has been asked before. Check the FAQ first.
|
||||
* [JS2Coffee](http://js2.coffee/)<br>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
### Transpilation
|
||||
|
||||
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).
|
||||
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).
|
||||
|
||||
#### Quickstart
|
||||
|
||||
|
||||
@@ -142,6 +142,24 @@
|
||||
<section id="scripts">
|
||||
<%= htmlFor('scripts') %>
|
||||
</section>
|
||||
<section id="integrations">
|
||||
<%= htmlFor('integrations') %>
|
||||
<section id="build-tools">
|
||||
<%= htmlFor('integrations_build_tools') %>
|
||||
</section>
|
||||
<section id="code-editors">
|
||||
<%= htmlFor('integrations_code_editors') %>
|
||||
</section>
|
||||
<section id="frameworks">
|
||||
<%= htmlFor('integrations_frameworks') %>
|
||||
</section>
|
||||
<section id="linters-and-formatting">
|
||||
<%= htmlFor('integrations_linters_and_formatting') %>
|
||||
</section>
|
||||
<section id="testing">
|
||||
<%= htmlFor('integrations_testing') %>
|
||||
</section>
|
||||
</section>
|
||||
<section id="resources">
|
||||
<%= htmlFor('resources') %>
|
||||
<section id="books">
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<div class="navbar-nav mr-auto d-none d-lg-flex">
|
||||
<a href="#try" id="try-link" class="nav-item nav-link" data-toggle="try">Try CoffeeScript</a>
|
||||
<a href="#language" class="nav-item nav-link" data-close="try">Language Reference</a>
|
||||
<a href="#integrations" class="nav-item nav-link" data-close="try">Integrations</a>
|
||||
<a href="#resources" class="nav-item nav-link" data-close="try">Resources</a>
|
||||
<a href="https://github.com/jashkenas/coffeescript/" class="nav-item nav-link" data-close="try">GitHub
|
||||
</a>
|
||||
|
||||
@@ -50,7 +50,14 @@
|
||||
<a href="#source-maps" class="nav-link" data-action="sidebar-nav">Source Maps</a>
|
||||
<a href="#cake" class="nav-link" data-action="sidebar-nav">Cake, and Cakefiles</a>
|
||||
<a href="#scripts" class="nav-link" data-action="sidebar-nav"><code>"text/coffeescript"</code> Script Tags</a>
|
||||
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
|
||||
<a href="#integrations" class="nav-link" data-action="sidebar-nav">Integrations</a>
|
||||
<nav class="nav flex-column">
|
||||
<a href="#build-tools" class="nav-link" data-action="sidebar-nav">Build Tools</a>
|
||||
<a href="#code-editors" class="nav-link" data-action="sidebar-nav">Code Editors</a>
|
||||
<a href="#frameworks" class="nav-link" data-action="sidebar-nav">Frameworks</a>
|
||||
<a href="#linters-and-formatting" class="nav-link" data-action="sidebar-nav">Linters and Formatting</a>
|
||||
<a href="#testing" class="nav-link" data-action="sidebar-nav">Testing</a>
|
||||
</nav>
|
||||
<a href="#resources" class="nav-link" data-action="sidebar-nav">Resources</a>
|
||||
<nav class="nav flex-column">
|
||||
<a href="#books" class="nav-link" data-action="sidebar-nav">Books</a>
|
||||
@@ -80,6 +87,7 @@
|
||||
<a href="#breaking-changes-argument-parsing-and-shebang-lines" class="nav-link" data-action="sidebar-nav">Argument Parsing and <code>#!</code> Lines</a>
|
||||
</nav>
|
||||
<a href="#changelog" class="nav-link" data-action="sidebar-nav">Changelog</a>
|
||||
<a href="test.html" class="nav-link" data-action="sidebar-nav">Browser-Based Tests</a>
|
||||
<a href="/v1/" class="nav-link" data-action="sidebar-nav">Version 1.x Documentation</a>
|
||||
</nav>
|
||||
</nav>
|
||||
|
||||
Reference in New Issue
Block a user