Download - Node & Express as Workflow Tools
![Page 1: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/1.jpg)
Building Custom Development Tools With Node.js
Commander.js
Topher BullockSoftware Engineer - Pivotal
@topherbullock
.. and other tools to help along the way.
![Page 2: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/2.jpg)
About● Topher Bullock● Software Engineer - Pivotal;
working on Cloud Foundry Services.
● Full-stack JavaScript
@topherbullock pivotal-topher-bullock
![Page 3: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/3.jpg)
● Faster / Easier Development● Rapid Prototyping● Task Automation● Test Driven Development● Build Systems● Debugging
![Page 4: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/4.jpg)
Case Study : Tomcat Woes
● Large scale JS MVC app ● leveraging APIs served by Spring*● eventually need to deploy everything
together in one big happy .war file● working on everything together meant being
tied to an IDE to deploy web app changes to Tomcat ~> slow development.
* Disclaimer : Spring is totally cool and is a solid framework for Java projects. They are making strides for improving workflows; e.g Spring Boot
![Page 5: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/5.jpg)
Observability
Browser
Tomcat
File System(Workspace)
IDE
![Page 6: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/6.jpg)
Using a traditional stack in production doesn’t mean you can’t
use Node.js for development.
Enterprises will resist deploying Node.js in favor of other
technologies.
![Page 7: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/7.jpg)
![Page 8: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/8.jpg)
Commander.js
![Page 9: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/9.jpg)
JIFASNIFJavaScript is Fun And
So Node.js is Fun“ ”
![Page 11: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/11.jpg)
● CLI tool written in Node.js● Task Automation / Build Tool (mvn-ish)● Simple Config / Pre Built tasks
Grunt
![Page 12: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/12.jpg)
Extending Grunt● Roll your own Grunt tasks● Programmatically run tasks and listen for
events
![Page 13: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/13.jpg)
![Page 14: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/14.jpg)
● The E in MEAN :3● Great for quickly spinning up a mock API
server● Good plumbing to serve front-end app for
development
Express
![Page 16: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/16.jpg)
Awesome colored output for console.
Progress bars, because they’re awesome.
Useful CLI Tools
General purpose CLI lib
Useful command prompt tools; works well alongside CommanderJSCommand.prompt() removed in 2.0.0
![Page 17: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/17.jpg)
![Page 18: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/18.jpg)
Contrary to the belief of many, ‘npm’ is not in fact an abbreviation for ‘Node Package Manager.’ It is a recursive bacronymic
abbreviation for ‘npm is not an acronym.’ (If it was ‘ninaa’, then it would be an acronym, and
thus incorrectly named.)
“”
![Page 19: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/19.jpg)
● Not "Node Package Manager.".. but it is the Package Manager for Node. -_-
● Great for distributing your tools● $ npm link is your friend
NPM
![Page 20: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/20.jpg)
![Page 21: Node & Express as Workflow Tools](https://reader034.vdocument.in/reader034/viewer/2022052504/5549debeb4c9050d488b4610/html5/thumbnails/21.jpg)
Thanks!Questions?
@topherbullock pivotal-topher-bullock