Get Programming with Node.js


Book Description

Summary Get Programming with Node.js teaches you to build web servers using JavaScript and Node. In this engaging tutorial, you'll work through eight complete projects, from writing the code for your first web server to adding live chat to a web app. Your hands will stay on the keyboard as you explore the most important aspects of the Node development process, including security, database management, authenticating user accounts, and deploying to production. You'll especially appreciate the easy-to-follow discussions, illuminating diagrams, and carefully explained code! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Node.js delivers the speed and reliability you need for ecommerce, social media, and gaming applications. It comes with thousands of prebuilt packages to help you get started immediately. If you want to use JavaScript on the server, Node.js is your choice. What's inside New features from ES2015 and later Writing asynchronous code Creating data models Debugging JavaScript modules About the Reader Written for front-end web developers with intermediate JavaScript skills. Table of Contents GETTING SET UP Lesson 0 - Setting up Node.js and the JavaScript engine Lesson 1 - Configuring your environment Lesson 2 - Running a Node.js application UNIT 1 - GETTING STARTED WITH NODE.JS Lesson 3 - Creating a Node.js module Lesson 4 - Building a simple web server in Node.js Lesson 5 - Handling incoming data Lesson 6 - Writing better routes and serving external files Lesson 7 - Capstone: Creating your first web application UNIT 2 - EASIER WEB DEVELOPMENT WITH EXPRESS.JS Lesson 8 - Setting up an app with Express.js Lesson 9 - Routing in Express.js Lesson 10 - Connecting views with templates Lesson 11 - Configurations and error handling Lesson 12 - Capstone: Enhancing the Confetti Cuisine site with Express.js UNIT 3 - CONNECTING TO A DATABASE Lesson 13 - Setting up a MongoDB database Lssson 14 - Building models with Mongoose Lesson 15 - Connecting controllers and models Using promises with Mongoose Lesson 16 - Capstone: Saving user subscriptions UNIT 4 - BUILDING A USER MODEL Lesson 17 - Improving your data models Lesson 18 - Building the user model Lesson 19 - Creating and reading your models Lesson 20 - Updating and deleting your models Lesson 21 - Capstone: Adding CRUD models to Confetti Cuisine Creating controllers UNIT 5 - AUTHENTICATING USER ACCOUNTS Lesson 22 - Adding sessions and flash messages Lesson 23 - Building a user login and hashing passwords Lesson 24 - Adding user authentication Lesson 25 - Capstone: Adding user authentication to Confetti Cuisine UNIT 6 - BUILDING AN API Lesson 26 - Adding an API to your application Lesson 27 - Accessing your API from your application Lesson 28 - Adding API security Lesson 29 - Capstone: Implementing an API UNIT 7 - ADDING CHAT FUNCTIONALITY Lesson 30 - Working with Socket.io Lesson 31 - Saving chat messages Lesson 32 - Adding a chat notification indicator UNIT 8 - DEPLOYING AND MANAGING CODE IN PRODUCTION Lesson 33 - Capstone: Adding a chat feature to Confetti Cuisine Lesson 34 - Deploying your application Lesson 35 - Managing in production Lesson 36 - Testing your application Lesson 37 - Capstone: Deploying Confetti Cuisine




Get Programming with JavaScript


Book Description

Summary Get Programming with JavaScript is a hands-on introduction to programming for readers who have never programmed. You'll be writing your own web apps, games, and programs in no time! Foreword by Remy Sharp. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Book Are you ready to start writing your own web apps, games, and programs? You’re in the right place! Get Programming with JavaScript is a hands-on introduction to programming for readers who have never written a line of code. Since you’re just getting started, this friendly book offers you lots of examples backed by careful explanations. As you go along, you’ll find exercises to check your understanding and plenty of opportunities to practice your new skills. You don’t need any­thing special to follow the examples—just the text editor and web browser already installed on your computer. We even give you links to working online code so you can see how everything should look live on your screen. What’s Inside All the basics—objects, functions, responding to users, and more Think like a coder and design your own programs Create a text-based adventure game Enhance web pages with JavaScript Run your programs in a web browser Four bonus chapters available online About the Reader No experience required! All you need is a web browser and an internet connection. About the Author John Larsen is a mathematics and computing teacher with an interest in educational research. He has an MA in mathematics and an MSc in information technology. He started programming in 1982, writing simple programs for teaching mathematics in 1993, building websites in 2001, and developing data-driven web-based applications for education in 2006. Table of Contents PART 1 CORE CONCEPTS ON THE CONSOLE Programming, JavaScript, and JS Bin Variables: storing data in your program Objects: grouping your data Functions: code on demand Arguments: passing data to functions Return values: getting data from functions Object arguments: functions working with objects Arrays: putting data into lists Constructors: building objects with functions Bracket notation: flexible property names PART 2 ORGANIZING YOUR PROGRAMS Scope: hiding information Conditions: choosing code to run Modules: breaking a program into pieces Models: working with data Views: displaying data Controllers: linking models and views PART 3 JAVASCRIPT IN THE BROWSER HTML: building web pages Controls: getting user input Templates: filling placeholders with data XHR: loading data Conclusion: get programming with JavaScript BONUS ONLINE CHAPTERS Node: running JavaScript outside the browser Express: building an API Polling: repeating requests with XHR Socket.IO: real-time messaging




Reactive Programming with Node.js


Book Description

Learn how to institute Reactive Programming (RP) for your back-end development with Node.js. Up to now, RP has most often been used in front-end development, but with its cutting-edge approach you can also transform your back-end programming. Reactive Programming with Node.js will show you the paradigms of RP, why you should use it, and the variations available to you. You will learn how to use the main libraries necessary to provide an enhanced development experience in Node.js, including RxJS, Bacon.js, Kefir.js, and Highland.js. You will also create a custom library that provides a variety of key features, and learn how to scale up a system developed using RP in Node.js. Ideal for back-end developers with knowledge of Node.js or JavaScript, this book enables you to get up and running with RP in Node.js, and revolutionize your back-end development. What You'll Learn: Review the variations of Reactive programming Use the main libraries that provide this type of development experience in Node.js Create a custom library Scale up a system developed using RP in Node.js Who This Book Is For: Any back-end developers who understand Node.js or are advanced enough to pick up the basics. Ideal for developers who have an interest in learning about this different programming paradigm that's being used more and more every day.




Node.js 8 the Right Way


Book Description

Node.js is the platform of choice for creating modern web services. This fast-paced book gets you up to speed on server-side programming with Node.js 8, as you develop real programs that are small, fast, low-profile, and useful. Take JavaScript beyond the browser, explore dynamic language features, and embrace evented programming.Harness the power of the event loop and non-blocking I/O to create highly parallel microservices and applications. This expanded and updated second edition showcases the latest ECMAScript features, current best practices, and modern development techniques. JavaScript is the backbone of the modern web, powering nearly every web app's user interface. Node.js is JavaScript for the server. This greatly expanded second edition introduces new language features while dramatically increasing coverage of core topics. Each hands-on chapter offers progressively more challenging topics and techniques, broadening your skill set and enabling you to think in Node.js. Write asynchronous, non-blocking code using Node.js's style and patterns. Cluster and load balance services with Node.js core features and third-party tools. Harness the power of databases such as Elasticsearch and Redis. Work with many protocols, create RESTful web services, TCP socket clients and servers, and more. Test your code's functionality with Mocha, and manage its life cycle with npm. Discover how Node.js pairs a server-side event loop with a JavaScript runtime to produce screaming fast, non-blocking concurrency. Through a series of practical programming domains, use the latest available ECMAScript features and harness key Node.js classes and popular modules. Create rich command-line tools and a web-based UI using modern web development techniques. Join the smart and diverse community that's rapidly advancing the state of the art in JavaScript development. What You Need: Node.js 8.x Operating system with bash-like shell OMQ (pronounced "Zero-M-Q") library, version 3.2 or higher Elasticsearch version 5.0 or higher jq version 1.5 or higher Redis version 3.2 or higher




Programming Web Applications with Node, Express and Pug


Book Description

Learn how to program modern web applications using the full Node.js platform, including Node.js on the server, Express for middleware and routing, and Pug (formerly Jade) to simplify the creation of views. Node.js is the foundation of all full JavaScript apps and plenty of books cover its full usage. This book focuses on how to use it to create server-based, modern web applications. Using Node.js alongside Express and Pug - the brand new version of Jade - you can create modern web applications solely using JavaScript. This book teaches you how to structure and build your app from scratch, and make development easy. What You Will Learn Use NodeJS in general and particularly the features require to create web applications Understand middleware and how to develop using the Express framework Explore the template engine Pug (formerly Jade) and how you can integrate it with Express“/li> Set up a complete development environment on both Linux and Windows Who This Book Is For Developers of web applications who come from Java/J2EE, ASP.NET, PHP, Ruby on Rails and want to explore the capabilities of JavaScript based server apps. It’s suitable for beginners that have a basic understanding of JavaScript already.




Node.js in Action


Book Description

Summary Node.js in Action, Second Edition is a thoroughly revised book based on the best-selling first edition. It starts at square one and guides you through all the features, techniques, and concepts you'll need to build production-quality Node applications. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology You already know JavaScript. The trick to mastering Node.js is learning how to build applications that fully exploit its powerful asynchronous event handling and non-blocking I/O features. The Node server radically simplifies event-driven real-time apps like chat, games, and live data analytics, and with its incredibly rich ecosystem of modules, tools, and libraries, it's hard to beat! About the Book Based on the bestselling first edition, Node.js in Action, Second Edition is a completely new book. Packed with practical examples, it teaches you how to create high-performance web servers using JavaScript and Node. You'll master key design concepts such as asynchronous programming, state management, and event-driven programming. And you'll learn to put together MVC servers using Express and Connect, design web APIs, and set up the perfect production environment to build, lint, and test. What's Inside Mastering non-blocking I/O The Node event loop Testing and deploying Web application templating About the Reader Written for web developers with intermediate JavaScript skills. About the Authors The Second Edition author team includes Node masters Alex Young, Bradley Meck, Mike Cantelon, and Tim Oxley, along with original authors Marc Harter, T.J. Holowaychuk, and Nathan Rajlich. Table of contents PART 1 - WELCOME TO NODE Welcome to Node.js Node programming fundamentals What is a Node web application? PART 2 - WEB DEVELOPMENT WITH NODE Front-end build systems Server-side frameworks Connect and Express in depth Web application templating Storing application data Testing Node applications Deploying Node applications and maintaining uptime PART 3 - BEYOND WEB DEVELOPMENT Writing command-line applications Conquering the desktop with Electron




Learning Node


Book Description

Take your web development skills from browser to server with Node—and learn how to write fast, highly scalable network applications on this JavaScript-based platform. With this hands-on guide, you’ll quickly master Node’s core fundamentals, gain experience with several built-in and contributed modules, and learn the differences and parallels between client- and server-side programming. Get up to speed on Node’s event-driven, asynchronous I/O model for developing data-intensive applications that are frequently accessed but computationally simple. If you’re comfortable working with JavaScript, this book provides numerous programming and deployment examples to help you take advantage of server-side development with Node. Explore Node’s unique approach to asynchronous development Build sample Node applications with the Express framework and Connect middleware Use NoSQL solutions such as Redis and MongoDB—and explore Node’s relational database modules Work with PDF files, serve HTML5 media, and create graphics with Canvas Set up bidirectional communication between browser and server with WebSockets Learn in-depth practices for debugging and testing your applications Deploy Node applications in the cloud or on your own system "Learning Node will make it easy for someone from any programming background to get a grip on Node.js and build amazing projects." —Tom Hughes-Croucher, co-author of Node: Up and Running (O’Reilly)




Distributed Systems with Node.js


Book Description

Many companies, from startups to Fortune 500 companies alike, use Node.js to build performant backend services. And engineers love Node.js for its approachable API and familiar syntax. Backed by the world's largest package repository, Node's enterprise foothold is only expected to grow. In this hands-on guide, author Thomas Hunter II proves that Node.js is just as capable as traditional enterprise platforms for building services that are observable, scalable, and resilient. Intermediate to advanced Node.js developers will find themselves integrating application code with a breadth of tooling from each layer of a modern service stack. Learn why running redundant copies of the same Node.js service is necessary Know which protocol to choose, depending on the situation Fine-tune your application containers for use in production Track down errors in a distributed setting to determine which service is at fault Simplify app code and increase performance by offloading work to a reverse proxy Build dashboards to monitor service health and throughput Find out why so many different tools are required when operating in an enterprise environment




Node.js in Practice


Book Description

Summary Node.js in Practice is a collection of fully tested examples that offer solutions to the common and not-so-common issues you face when you roll out Node. You'll dig into important topics like the ins and outs of event-based programming, how and why to use closures, how to structure applications to take advantage of end-to-end JavaScript apps, and more. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Book You've decided to use Node.js for your next project and you need the skills to implement Node in production. It would be great to have Node experts Alex Young and Marc Harter at your side to help you tackle those day-to-day challenges. With this book, you can! Node.js in Practice is a collection of 115 thoroughly tested examples and instantly useful techniques guaranteed to make any Node application go more smoothly. Following a common-sense Problem/Solution format, these experience-fueled techniques cover important topics like event-based programming, streams, integrating external applications, and deployment. The abundantly annotated code makes the examples easy to follow, and techniques are organized into logical clusters, so it's a snap to find what you're looking for. Written for readers who have a practical knowledge of JavaScript and the basics of Node.js. What's Inside Common usage examples, from basic to advanced Designing and writing modules Testing and debugging Node apps Integrating Node into existing systems About the Authors Alex Young is a seasoned JavaScript developer who blogs regularly at DailyJS. Marc Harter works daily on large-scale projects including high-availability real-time applications, streaming interfaces, and other data-intensive systems. Table of Contents PART 1 NODE FUNDAMENTALS Getting started Globals: Node's environment Buffers: Working with bits, bytes, and encodings Events: Mastering EventEmitter and beyond Streams: Node's most powerful and misunderstood feature File system: Synchronous and asynchronous approaches Networking: Node's true "Hello, World" Child processes: Integrating external applications with Node PART 2 REAL-WORLD RECIPES The Web: Build leaner and meaner web applications Tests: The key to confident code Debugging: Designing for introspection and resolving issues Node in production: Deploying applications safely PART 3 WRITING MODULES Writing modules: Mastering what Node is all about




Node.js for Embedded Systems


Book Description

How can we build bridges from the digital world of the Internet to the analog world that surrounds us? By bringing accessibility to embedded components such as sensors and microcontrollers, JavaScript and Node.js might shape the world of physical computing as they did for web browsers. This practical guide shows hardware and software engineers, makers, and web developers how to talk in JavaScript with a variety of hardware platforms. Authors Patrick Mulder and Kelsey Breseman also delve into the basics of microcontrollers, single-board computers, and other hardware components. Use JavaScript to program microcontrollers with Arduino and Espruino Prototype IoT devices with the Tessel 2 development platform Learn about electronic input and output components, including sensors Connect microcontrollers to the Internet with the Particle Photon toolchain Run Node.js on single-board computers such as Raspberry Pi and Intel Edison Talk to embedded devices with Node.js libraries such as Johnny-Five, and remotely control the devices with Bluetooth Use MQTT as a message broker to connect devices across networks Explore ways to use robots as building blocks for shared experiences