Advanced Node.js Process Management with PM2

Matthew Brown JavaScript, Node.js, Technology Snapshot, Tutorial Leave a Comment

If you’ve worked on any front end applications recently, you have likely had some contact with a Node/Express application. What you may not be familiar with is how these applications are managed in production.

I recently had a project where I needed to set up a Node application on an AWS server. I needed a tool to solve the technical challenges of managing the Node processes and deploying the application in a very efficient manner.

I chose PM2, which is a handy process management tool for running Node.js applications in production environments. PM2 provides a simple command line interface that makes it easy to get started. This powerful Node module has tools for managing application processes, logging, and more.

In this article, I provide an introduction to PM2, showing why it is such a valuable tool for managing Node.js applications. By way of a reference example application, we show the basic features and commands for using PM2 and give examples of generating configuration files for both running and deploying applications.



The Joy of Forms with React and Formik

Mat Warger JavaScript, React, Technology Snapshot, Tutorial Leave a Comment

React is a JavaScript library for building user interfaces. That’s it. It’s a way to use JavaScript to define UI elements based on user-defined properties and internal state.

It has a clean, functional style. You can create simple components that compose very well into larger components, which you can then use to compose pages and entire applications. This simple composability is one of the main reasons I enjoy working with it.

But, it is not an application framework. It doesn’t pretend to be. This can be useful when all you want is some quick UI. But, as the application grows, you will need to depend on outside libraries for things like state-management, routing, and forms.

In this article, learn how to handle form input with React, from basic form input using simple state through advanced form components using Formik….



An Example Progressive Web App on Android

RJ Dela-Cruz AngularJS, JavaScript, Mobile, Technology Snapshot Leave a Comment

In my experience, the best way to learn a new technology is to create something tangible with it. I recently sought out to learn Angular and Angular Material. So, I developed an experimental Angular app that uses omdbapi to query Movie Posters. It’s aptly named Movie Poster Finder.

Developing the Movie Poster Finder application, I ran into a thing called PWA, which is also known as Progressive Web Applications. I thought it was really neat that both Android and mobile Chrome treat them as native applications.

In this post, I will show an example Progressive Web Application in action, explaining what I encountered when turning an experimental Angular web application into a PWA.



React v16.0 Release Overview and Migration

Luke Curran JavaScript, React, Technology Snapshot Leave a Comment

React v16.0 was released by Facebook on Tuesday, September 26th. This version introduces performance boosts and other very helpful features.

React 16 brings some significant internal changes features to the table. In my opinion, one of the most interesting thing about this release is that React has been rewritten. Luckily, in terms of upgrading, if your app runs in 15.6 without any warnings, it should work in 16 (with minor exceptions).

In this blog I highlight some of the new features introduced in React v16.0, in addition to demonstrating how to update your current React applications to v16.0 using a Keyhole open source application for reference…



A Conversation About Conversations

David Pitt JavaScript, Keyhole Creations, Mobile, Node.js, React, Technology Snapshot Leave a Comment

We created a platform that supports developing a “conversational” type application through SMS. The user experience between a user and an SMS application can be thought of as a conversation. A user texts a question or topic, and a reply is returned, then another question and reply is performed until a desired result is accomplished.

Now, this is not a universal user experience, but for many use cases it can provide an easy to deliver users functionality quickly and conveniently. There is no need to install or download apps, or pop open a browser and type in a URL; just have a conversation through your texting app.

In this blog: Why conversational applications are handy, examples of conversational applications we have created, and a walkthrough of the application architecture used to develop those SMS applications. Includes how to make texting a richer experience, state, and session handling insights.