
This video gives an overview of the entire course.
To understand microservices architecture, we must first familiarize ourselves with monolithic architecture. In this video, we will learn how monolithic systems are constructs in which all the functional components of an application are packaged together in a single unit. Let us begin with:
This video summarizes what we have learned in the earlier topics.
This video provides the overview of this section.
This video explains how to use Seneca by installing it locally. We will also learn how to implement microservices using Seneca.
This video explains how the Seneca.add method adds a new action pattern to the Seneca instance. The first parameter of the add method, called pattern, takes a JSON string or object that is the action identifier/message. The second parameter is a callback function that will be executed when a pattern matches a message. The steps involved with creating your first Seneca application are:
This video summarizes what we have learned in the earlier topics.
This video provides the basic expectations required from this section.
This video explains how Web Real-Time Communication (WebRTC) is a browser technology that enables the retrieval of the media streams of physical media sources and the exchange of media streams, or any other data, in real time. To understand WebRTC thoroughly, we must be familiar with the meaning of terms that we are going to be using frequently. These terms are:
This video explains how PeerJS is a client-side JavaScript library that provides an easy-to-use API to work with WebRTC. It only provides an API to exchange MediaStream (RTCPeerConnection) and arbitrary data between peers. It doesn't provide an API to work with MediaStream. It simplifies peer-to-peer data, audio, and video calls. To do this, we have to have the following:
This video explains how Socket.IO is a combination of the client-side JavaScript library. Node.js library is used to integrate bidirectional communication between a browser and the Node.js backend. Let us begin with:
This video summarizes what we have learned in the earlier topics.
This video provides the basic expectations required from this section.
Before we get into FRP, we need to understand what it is. This video deals with reactive programming with respect to JavaScript. The concept of reactive programming is the same in every programming language. Reactive programming is writing code to look for asynchronous data updates, user activities, and system activities and propagate changes onto the dependent parts of the application.
Before we get into FRP, it's necessary to have basic knowledge about functional programming. This video explains that functional programming is a style of writing code in which we use only pure function calls (including recursion) instead of loops and conditionals, and data is immutable. Let us begin with:
This video summarizes what we have learned in the earlier topics.
This video provides the basic expectations required from this section.
This video explains how Bacon.js library is a library for functional reactive programming. More specifically, it is a library for working with events and dynamic values (which are called Properties in Bacon.js). It provides the Bacon.Error constructor to explicitly mark events or values of EventStreams or properties respectively as errors so that Bacon can identify them and open up a wide variety of other APIs to work with those errors specifically. Let us begin with:
This video explains how Bacon.js utilizes APIs to enable us to create EventStreams of objects, DOMs, and so on, which may contain a single value or an error, followed immediately by stream end. It also contains a lot of methods that can be used for both EventStreams and properties. Let us begin with:
This video summarizes what we have learned in the earlier topics.
This video provides the basic expectations required from this section.
This video gives an overview of Bootstrap. Bootstrap is an open-source, frontend framework for building responsive user interfaces. It targets mobile devices by focusing on mobile-first projects on the web. This means that it is primarily designed for mobile devices, then scales up from there. It has the advantage of simplifying front-end web development and further speeding up development time, irrespective of the project at hand, while at the same time maintaining quality and consistency across the site. In Bootstrap, we no longer need to redesign every element and we also don't need to spend hours trying to get everything looking and working right across browsers and devices. Let us begin with:
This video explains how Bootstrap 4 has switched from pixels (px) to rem and em wherever possible. 1 em is equal to the current font size of the parent element. 2 em means two times the size of the current font. This means that we can achieve responsive typography and components by just changing the parent element's font size using CSS media queries for different viewports or device width sizes. Let us begin by:
This video explains card component in brief. The card component is a new feature in Bootstrap 4 that replaces the wells, panels, and thumbnails (used in Bootstrap 3). It is a flexible and extensible content container. It includes options for headers and footers, a wide variety of content, contextual background colors, and powerful display options. Let us begin by:
This video summarizes what we have learned in the earlier topics.
This video provides the basic expectations required from this section.
This video talks about harnessing the benefits of React. To do this, we need to:
This video gives an overview of JSX. JSX stands for JavaScript syntax extension. Files that contain JSX code have the .jsx extension. Let us begin with:
This video explains that Flux is a pattern rather than a formal framework. It is an application architecture used for building client-side web applications. Also, it complements React's composable view components by utilizing a unidirectional data flow. It as an alternative to MVC.
This video explains that React Router is the most popular and recommended routing library for React. This is because it provides a simple API with powerful features such as dynamic route matching and location transition handling built in.
This video summarizes what we have learned in the earlier topics.
JavaScript has now become a universal development language. Whilst offering great benefits, the complexity of the entire ecosystem can be overwhelming.
In this course, we will take a look at the libraries in JavaScript that aid in building applications that have a microservices-based architecture, have features like audio and video calling, real-time score updates, multi-faceted search options and more. We will not only look at building these applications but also explore a number of industry-standard best practices.
With coverage of both server-side and front-end development, this course will provide attendees with the skills required to develop cutting-edge web applications that stand the test of time.
About the Author
Narayan Prusty is a full-stack developer. He works as a consultant for various start-ups around the world. He has worked on various technologies and programming languages, but is very passionate about JavaScript, WordPress, Ethereum, Solr, React, Cordova, MongoDB, and AWS.
Apart from consulting for various start-ups, he also runs a blog titled QNimate and a video tutorial site titled QScutter, where he shares information about a lot of the technologies he works on.
Alexander Chinedu Nnakwue was born and raised in a small city in the southern part of Nigeria. Originally from the south-eastern part of the country, he now lives and works in Lagos city. He has a degree in Mechanical Engineering from the University of Ibadan, Nigeria.
He has been a professional developer ever since he graduated. Alex has trained himself to work with both frontend and backend technologies. He is presently a developer, mentor, and software technical trainee with sparkplug, a Nigerian technology start-up company working to train people on emerging technologies. He is interested in learning new technologies, growing as a developer, and contributing more to the developer community. He has a particular love for JavaScript.
Zsolt Nagy is the head of Frontend at Sociomantic Labs. He specializes in maintainable JavaScript applications since 2010. He is also the author of three PacktPub courses on Functional Programming.
He is the founder of:
A tech blog on developing maintainable web applications
A career blog on finding lasting fulfilment in your career.