Difference between revisions of "Node.js"

From Freephile Wiki
Jump to navigation Jump to search
(Adds reference to Grunt)
(link to cheatsheet)
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
Node.js is a platform for doing network applications using [[JavaScript]] on the client and server.  Basically, it's like an Apache web server, written in C, and using the Chrome browser's JavaScript engine.  The community is well-developed and there are many pre-written 'modules'. [[wp:Node.js]]
+
== Intro ==
 +
[http://radar.oreilly.com/2011/07/what-is-node.html What is node?]<ref>Radar O'Reilly article from 2011 that is a good overview.</ref> [https://www.youtube.com/watch?v=OUCHr2H-7_g video with Tom Hughes-Croucher of Joyent]
 +
 
 +
Node.js is a platform for doing network applications using [[JavaScript]] on the client and server.  Basically, it's like an Apache web server, written in C, and using the Chrome browser's JavaScript engine.  The community is well-developed and there are many pre-written 'modules'. See the [[wp:Node.js|wikipedia article]] for more.
 +
 
 +
== Parsoid Web Service API ==
 +
https://freephile.org/node is a node.js implementation that powers the [[Visual editor]] for MediaWiki
 +
* {{@todo}} reconstitute the node service
 +
** {{done}} installed nodejs package (note that the package provides npm, so it conflicts with the npm standalone package) '''<code>dpkg-query --status nodejs</code>'''
 +
** {{AI}} configure port
 +
 
 +
== Links ==
  
 
* [http://nodejs.org/ Node.js official website]
 
* [http://nodejs.org/ Node.js official website]
* [http://nodejs.org/api/index.html Node.js API docs]  
+
* [http://nodejs.org/api/index.html Node.js API docs]
 
* [http://npmjs.org/ npm] - the official package manager for Node.js
 
* [http://npmjs.org/ npm] - the official package manager for Node.js
 
* [https://github.com/creationix/nvm nvm] - Node Version Manager.  A bash script to manage multiple active node.js versions.  Although the packaged node.js for Ubuntu 12.04 is rather old, nvm allows you to instantly use the newest version; and use multiple versions (if your projects have certain dependencies) without problem.
 
* [https://github.com/creationix/nvm nvm] - Node Version Manager.  A bash script to manage multiple active node.js versions.  Although the packaged node.js for Ubuntu 12.04 is rather old, nvm allows you to instantly use the newest version; and use multiple versions (if your projects have certain dependencies) without problem.
 
* [https://nodejsmodules.org/ nodejs modules]
 
* [https://nodejsmodules.org/ nodejs modules]
 
* [http://nodeguide.com/index.html Felix's Node.js Guide]
 
* [http://nodeguide.com/index.html Felix's Node.js Guide]
 +
* [http://browsenpm.org/package.json interactive cheatsheet for <code>package.json</code>]
 
* Learnable.com has an intro to node.js course which is valuable.
 
* Learnable.com has an intro to node.js course which is valuable.
 
* [http://nodeschool.io/ Node School]
 
* [http://nodeschool.io/ Node School]
Line 14: Line 26:
 
* [https://angularjs.org/ AngularJS] - a 100% JavaScript client-side templating framework that provides data binding. Not related to node.js, but useful on the client-side.
 
* [https://angularjs.org/ AngularJS] - a 100% JavaScript client-side templating framework that provides data binding. Not related to node.js, but useful on the client-side.
 
* [http://eirikb.github.io/nipster/ nipster] search for npm modules
 
* [http://eirikb.github.io/nipster/ nipster] search for npm modules
 +
* http://howtonode.org/ created by Tim Caswell (see https://creationix.com/)
 +
 +
== Front-end Build Tools ==
 +
When doing nodejs development or [[front-end development]], you may also wish to employ some sort of build system or task runner for performing repetitive tasks like minification, compilation, unit testing, linting, etc.
 +
* While many people have been using '[http://gruntjs.com/ Grunt]'
 +
* I like '[http://slides.com/contra/gulp Gulp]' better because it's code over configuration and more intuitive.
 +
* Meanwhile, Andrew Krespanis of SitePoint shows a great example of how you can simply [http://www.sitepoint.com/using-gnu-make-front-end-development-build-tool/ use GNU Make for a front-end development build tool] (More on [[Make]])
 +
 +
== Node Happenings ==
 +
The people of Node (e.g. [https://github.com/mikeal Mikeal Rogers]) are doing a lot of interesting things.  Like [http://jsfest.com/ JSFest] which happened in SanFrancisco 2014, or Node school.
 +
 +
{{References}}
  
When doing nodejs development, you may also wish to employ '<nowiki>[http://gruntjs.com/ Grunt]</nowiki>' which is a task runner for performing repetitive tasks like minification, compilation, unit testing, linting, etc.[[Category:JavaScript]]
+
[[Category:JavaScript]]

Latest revision as of 02:23, 2 December 2016

Intro[edit | edit source]

What is node?[1]video with Tom Hughes-Croucher of Joyent

Node.js is a platform for doing network applications using JavaScript on the client and server. Basically, it's like an Apache web server, written in C, and using the Chrome browser's JavaScript engine. The community is well-developed and there are many pre-written 'modules'. See the wikipedia article for more.

Parsoid Web Service API[edit | edit source]

https://freephile.org/node is a node.js implementation that powers the Visual editor for MediaWiki

  • Gedit.svg todo reconstitute the node service
    • Done installed nodejs package (note that the package provides npm, so it conflicts with the npm standalone package) dpkg-query --status nodejs
    • Knotes.svg configure port

Links[edit | edit source]

Front-end Build Tools[edit | edit source]

When doing nodejs development or front-end development, you may also wish to employ some sort of build system or task runner for performing repetitive tasks like minification, compilation, unit testing, linting, etc.

Node Happenings[edit | edit source]

The people of Node (e.g. Mikeal Rogers) are doing a lot of interesting things. Like JSFest which happened in SanFrancisco 2014, or Node school.

References[edit source]

  1. Radar O'Reilly article from 2011 that is a good overview.