Cross-platform Desktop Application Development: Electron, Node, NW.js, and React

Build powerful cross-platform desktop applications with web technologies such as Node, NW.JS, Electron, and React
Preview in Mapt

Cross-platform Desktop Application Development: Electron, Node, NW.js, and React

Dmitry Sheiko

Build powerful cross-platform desktop applications with web technologies such as Node, NW.JS, Electron, and React
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Cross-platform Desktop Application Development: Electron, Node, NW.js, and React Book Cover
Cross-platform Desktop Application Development: Electron, Node, NW.js, and React
$ 35.99
$ 25.20
Building Cross-Platform Desktop Applications with Electron Book Cover
Building Cross-Platform Desktop Applications with Electron
$ 35.99
$ 25.20
Buy 2 for $35.00
Save $36.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781788295697
Paperback300 pages

Book Description

Building and maintaining cross-platform desktop applications with native languages isn’t a trivial task. Since it’s hard to simulate on a foreign platform, packaging and distribution can be quite platform-specific and testing cross-platform apps is pretty complicated.In such scenarios, web technologies such as HTML5 and JavaScript can be your lifesaver. HTML5 desktop applications can be distributed across different platforms (Window, MacOS, and Linux) without any modifications to the code.

The book starts with a walk-through on building a simple file explorer from scratch powered by NW.JS. So you will practice the most exciting features of bleeding edge CSS and JavaScript. In addition you will learn to use the desktop environment integration API, source code protection, packaging, and auto-updating with NW.JS.
As the second application you will build a chat-system example implemented with Electron and React. While developing the chat app, you will get Photonkit. Next, you will create a screen capturer with NW.JS, React, and Redux.

Finally, you will examine an RSS-reader built with TypeScript, React, Redux, and Electron. Generic UI components will be reused from the React MDL library. By the end of the book, you will have built four desktop apps. You will have covered everything from planning, designing, and development to the enhancement, testing, and delivery of these apps.

Table of Contents

Chapter 1: Creating a File Explorer with NW.js-Planning, Designing, and Development
The application blueprint
Setting up an NW.js project
Node Package Manager
An HTML prototype
Fulfilling the functional requirements
Handling windowing actions
Writing a service to navigate through directories
Writing view modules
Summary
Chapter 2: Creating a File Explorer with NW.js – Enhancement and Delivery
Internationalization and localization
Context menu
System clipboard
Menu in the system tray
Command-line options
Native look and feel
Source code protection
Packaging
Autoupdate
Summary
Chapter 3: Creating a Chat System with Electron and React – Planning, Designing, and Development
Application blueprint
Electron
React
Electron meets React
Enabling DevTools extensions
Static prototype
Summary
Chapter 4: Creating a Chat System with Electron and React – Enhancement, Testing, and Delivery
Revitalizing the title bar
Utilizing WebSockets
Implementing chat services
Bringing functionality to the components
Writing unit-tests
Packaging and distribution
Deployment and updates
Summary
Chapter 5: Creating a Screen Capturer with NW.js, React, and Redux – Planning, Design, and Development
Application blueprint
Setting up the development environment
Static prototype
Comprehending redux
Introducing the application state
Summary
Chapter 6: Creating a Screen Capturer with NW.js: Enhancement, Tooling, and Testing
Tooling Redux
Redux DevTools
Unit-testing Redux
Taking a screenshot
Recording a screencast
Taking advantage of the system tray
Registering global keyboard shortcuts
Summary
Chapter 7: Creating RSS Aggregator with Electron, TypeScript , React, and Redux: Planning, Design, and Development
Application blueprint
Welcome to TypeScript
Setting up the development environment for TypeScript
Creating static prototype
Summary
Chapter 8: Creating RSS Aggregator with Electron, TypeScript, React, and Redux: Development
Creating a service to fetch RSS
Creating a service to manage feed menu
Actions and Reducers
Connecting to the store
Consuming store from the components
Creating router service
Summary

What You Will Learn

  • Plan, design, and develop different cross-platform desktop apps
  • Application architecture with React and local state
  • Application architecture with React and Redux store
  • Code design with TypeScript interfaces and specialized types
  • CSS and component libraries such as Photonkit, Material UI, and React MDL
  • HTML5 APIs such as desktop notifications, WebSockets, WebRTC, and others
  • Desktop environment integration APIs of NW.js and Electron
  • Package and distribute for NW.JS and Electron

Authors

Table of Contents

Chapter 1: Creating a File Explorer with NW.js-Planning, Designing, and Development
The application blueprint
Setting up an NW.js project
Node Package Manager
An HTML prototype
Fulfilling the functional requirements
Handling windowing actions
Writing a service to navigate through directories
Writing view modules
Summary
Chapter 2: Creating a File Explorer with NW.js – Enhancement and Delivery
Internationalization and localization
Context menu
System clipboard
Menu in the system tray
Command-line options
Native look and feel
Source code protection
Packaging
Autoupdate
Summary
Chapter 3: Creating a Chat System with Electron and React – Planning, Designing, and Development
Application blueprint
Electron
React
Electron meets React
Enabling DevTools extensions
Static prototype
Summary
Chapter 4: Creating a Chat System with Electron and React – Enhancement, Testing, and Delivery
Revitalizing the title bar
Utilizing WebSockets
Implementing chat services
Bringing functionality to the components
Writing unit-tests
Packaging and distribution
Deployment and updates
Summary
Chapter 5: Creating a Screen Capturer with NW.js, React, and Redux – Planning, Design, and Development
Application blueprint
Setting up the development environment
Static prototype
Comprehending redux
Introducing the application state
Summary
Chapter 6: Creating a Screen Capturer with NW.js: Enhancement, Tooling, and Testing
Tooling Redux
Redux DevTools
Unit-testing Redux
Taking a screenshot
Recording a screencast
Taking advantage of the system tray
Registering global keyboard shortcuts
Summary
Chapter 7: Creating RSS Aggregator with Electron, TypeScript , React, and Redux: Planning, Design, and Development
Application blueprint
Welcome to TypeScript
Setting up the development environment for TypeScript
Creating static prototype
Summary
Chapter 8: Creating RSS Aggregator with Electron, TypeScript, React, and Redux: Development
Creating a service to fetch RSS
Creating a service to manage feed menu
Actions and Reducers
Connecting to the store
Consuming store from the components
Creating router service
Summary

Book Details

ISBN 139781788295697
Paperback300 pages
Read More

Read More Reviews

Recommended for You

Building Cross-Platform Desktop Applications with Electron Book Cover
Building Cross-Platform Desktop Applications with Electron
$ 35.99
$ 25.20
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development - Third Edition Book Cover
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development - Third Edition
$ 39.99
$ 28.00
C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition Book Cover
C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition
$ 39.99
$ 28.00
C# 6 and .NET Core 1.0: Modern Cross-Platform Development Book Cover
C# 6 and .NET Core 1.0: Modern Cross-Platform Development
$ 39.99
$ 28.00
PhoneGap and AngularJS for Cross-platform Development Book Cover
PhoneGap and AngularJS for Cross-platform Development
$ 19.99
$ 14.00
Xamarin: Cross-Platform Mobile Application Development Book Cover
Xamarin: Cross-Platform Mobile Application Development
$ 69.99
$ 49.00