Difference between revisions of "ECE497 Notes on node.js"

From eLinux.org
Jump to: navigation, search
(Links: Added JavaScript: The Good Parts)
m (Cloud9: Removed)
 
(26 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:ECE497]]
+
[[Category:ECE497Notes |node]]
 +
{{YoderHead}}
  
 
I'm working up and example on [http://nodejs.org/ node.js].  Here are some notes.
 
I'm working up and example on [http://nodejs.org/ node.js].  Here are some notes.
 +
 +
== Installing ==
 +
=== Beagle ===
 +
 +
beagle$ opkg update
 +
beagle$ opkg install nodejs
  
 
== Links ==
 
== Links ==
  
* [http://www.nodebeginner.org/ This] looks like a good tutorial.
+
* [http://www.nodebeginner.org/ nodebeginner.org] looks like a good tutorial.
* [http://elinux.org/images/b/ba/Elc2011_kridner.pdf Here's] looks like some notes notes from Jason.
+
* [http://nodeguide.com/ http://nodeguide.com/]
 +
* [http://nodetuts.com/ nodetuts.com]
 +
* [http://elinux.org/images/b/ba/Elc2011_kridner.pdf Elc2011_kridner.pdf] looks like some notes from Jason.
 
* [http://debuggable.com/posts/understanding-node-js:4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb Understanding node.js]
 
* [http://debuggable.com/posts/understanding-node-js:4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb Understanding node.js]
 
* [http://howtonode.org/ How to node].  Looks like this also has some nice JavaScript tutorials.
 
* [http://howtonode.org/ How to node].  Looks like this also has some nice JavaScript tutorials.
* YouTube intro to [http://www.youtube.com/watch?v=jo_B4LTHi3I&feature=share node.js]
+
* YouTube intro to [http://www.youtube.com/watch?v=jo_B4LTHi3I&feature=share node.js] (About an hour.)
 
* [http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/ Understanding the node.js event loop]
 
* [http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/ Understanding the node.js event loop]
 
* [http://coding.smashingmagazine.com/2011/09/16/useful-node-js-tools-tutorials-and-resources/ Useful node.js tools]
 
* [http://coding.smashingmagazine.com/2011/09/16/useful-node-js-tools-tutorials-and-resources/ Useful node.js tools]
Line 16: Line 25:
 
* [http://cloud9ide.posterous.com/never-commit-to-your-master cloud9] development process.
 
* [http://cloud9ide.posterous.com/never-commit-to-your-master cloud9] development process.
 
* [http://nodemanual.org/latest/ Manual] for node.js
 
* [http://nodemanual.org/latest/ Manual] for node.js
* [http://net.tutsplus.com/tutorials/javascript-ajax/getting-started-with-node-js-and-geddy Geddy] and node.js.  Geddy is a simple and structured MVC (model, view, controller) framework for Node.js. The tutorial is too detailed for what I'm looking for.
+
* [http://net.tutsplus.com/tutorials/javascript-ajax/getting-started-with-node-js-and-geddy Geddy] and node.js.  Geddy is a simple and structured MVC (model, view, controller) framework for Node.js. The tutorial is too detailed for what I'm looking for. [http://net.tutsplus.com/tutorials/javascript-ajax/creating-a-to-do-list-app-with-node-js-and-geddy/ More geddy]
 +
* [http://blog.nodejs.org/2012/04/25/profiling-node-js/ Profiling node.js]
 +
* [http://sharejs.org ShareJS – Live concurrent editing in your app]
 +
* [https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html Web Audio API]
 +
* [http://www.chromium.org/developers/meet-the-web-platform-companion Web platform]
 +
* [http://engineering.linkedin.com/nodejs/blazing-fast-nodejs-10-performance-tips-linkedin-mobile Blazing fast nose.js]
 +
* [http://nikhilm.github.com/uvbook/ libuv book]
 +
 
 +
* [http://www.manning.com/cantelon/ Node.js in Action]. Buy this one.  It looks pretty good.  It pointed me to the following two links.
 
* [https://developer.mozilla.org/en/A_re-introduction_to_JavaScript A re-introduction to JavaScript]
 
* [https://developer.mozilla.org/en/A_re-introduction_to_JavaScript A re-introduction to JavaScript]
 
* [http://eleventyone.done.hu/OReilly.JavaScript.The.Good.Parts.May.2008.pdf JavaScript: The Good Parts].  This may be a pirated copy.  Better buy the real one.
 
* [http://eleventyone.done.hu/OReilly.JavaScript.The.Good.Parts.May.2008.pdf JavaScript: The Good Parts].  This may be a pirated copy.  Better buy the real one.
 +
* Install '''jslint''' for node.js with <code>sudo npm -g install jslint</code>. Details: [https://github.com/reid/node-jslint node-jslint].
  
== Cloud9 ==
+
[http://codehenge.net/blog/2011/12/getting-started-with-node-js-and-socket-io-v0-7-part-2/ Socket.io] looks like a good way to pass data to the browser.
 
 
Somehow [http://cloud9ide.com/yoder Cloud9] fits in with this.
 
 
 
I'm trying to get cloud9 running on the Beagle.
 
 
 
beagle$ '''opkg update'''
 
beagle$ '''opkg install nodejs''' (1min 6 sec)
 
beagle$ '''opkg install nodejs-dev''' (I don't know if this is needed.)
 
 
 
Something from Jason
 
  
beagle$ '''opkg install bonescript'''
+
=== Examples ===
beagle$ '''opkg install cloud9'''
+
* [http://csanz.posterous.com/intro-to-nodejs-slide-show-app-written-in-nod intro to node.js slide show app written in node.js]
 
+
* [http://maxogden.com/node-streams node streams]
Here’s how to get npm according to http://npmjs.org/
+
* [http://summerofnodejs.com/ Summer of node.js]
 
+
* [http://cestfait.ch/content/chat-webapp-nodejs chat-webapp-nodejs]
beagle$ '''opkg install curl''' (1m23)
+
* [http://shapeshed.com/creating-a-basic-site-with-node-and-express/ Creating a Basic Site With node.js and Express]
beagle$ '''opkg install nodejs''' (1m6)
+
* [http://mustafaakin.wordpress.com/2012/04/28/wsftp-file-transfer-over-websockets/ WSFTP: File Transfer over Websockets]
beagle$ '''curl http://npmjs.org/install.sh | sh''' (1m5)
+
* [http://www.chrissharkey.com/programming-blog/2012/03/12/making-an-hilarious-irc-bot-in-node-js MAKING AN HILARIOUS IRC BOT IN COFFEESCRIPT USING NODE.JS]
 
 
It's said [https://groups.google.com/forum/#!topic/beagleboard/uGp90z-BJkc this] will work on a current distribution of Angstrom, but it doesn't work for me.
 
beagle$ '''opkg install cloud9'''
 
 
 
=== non-Beagle ===
 
 
 
Here are instructions for a non-Beagle install from [https://groups.google.com/forum/#!starred/cloud9-ide/L4DSGZS4KmM here].
 
 
 
host$ '''git clone git://github.com/ajaxorg/cloud9.git'''  (16 seconds)
 
host$ '''cd cloud9'''
 
host$ '''bin/cloud9.sh'''
 
 
 
then
 
host$ '''node ./bin/cloud9.js'''
 
  
 
== gitting examples ==
 
== gitting examples ==
  
 
  git clone git://gitorious.org/~Jadon/beagleboard-validation/jadons-education.git ''(10s)''
 
  git clone git://gitorious.org/~Jadon/beagleboard-validation/jadons-education.git ''(10s)''
 +
 +
{{YoderFoot}}

Latest revision as of 10:05, 14 October 2013

thumb‎ Embedded Linux Class by Mark A. Yoder


I'm working up and example on node.js. Here are some notes.

Installing

Beagle

beagle$ opkg update
beagle$ opkg install nodejs

Links

Socket.io looks like a good way to pass data to the browser.

Examples

gitting examples

git clone git://gitorious.org/~Jadon/beagleboard-validation/jadons-education.git (10s)




thumb‎ Embedded Linux Class by Mark A. Yoder