<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: APPWRK IT Solutions</title>
    <description>The latest articles on DEV Community by APPWRK IT Solutions (@appwrk).</description>
    <link>https://dev.to/appwrk</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F517241%2F358155f6-20a3-4990-884c-ba75a396cef3.png</url>
      <title>DEV Community: APPWRK IT Solutions</title>
      <link>https://dev.to/appwrk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/appwrk"/>
    <language>en</language>
    <item>
      <title>Deploy ReactJS and NodeJS App on Server with Jenkins</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Thu, 14 Jan 2021 12:50:26 +0000</pubDate>
      <link>https://dev.to/appwrk/deploy-reactjs-and-nodejs-app-on-server-with-jenkins-ol</link>
      <guid>https://dev.to/appwrk/deploy-reactjs-and-nodejs-app-on-server-with-jenkins-ol</guid>
      <description>&lt;p&gt;Today in this article, we shall discuss how to build and deploy ReactJS and NodeJS applications on the server using Jenkins. More and more businesses these days are relying upon Jenkins because of the exclusive advantages that this famous continuous Integration tool brings.&lt;/p&gt;

&lt;p&gt;For those who don’t know what Jenkin means, then allow us to enlighten you up on that first.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Jenkins
&lt;/h2&gt;

&lt;p&gt;It is an open-source automation tool crafted in Java via plugins made for continuous integration purposes. This tool is used for building and testing the software projects so that it becomes easy for the developers to accommodate the changes to the project, and making it simple for the users to collect a fresh build.&lt;/p&gt;

&lt;p&gt;Using Jenkins helps in the continuous delivery of software by combining it with a wide range of testing and deployment technologies. We will cover ReactJS and NodeJS in this article.&lt;/p&gt;

&lt;h2&gt;
  
  
  Advantages of Jenkins
&lt;/h2&gt;

&lt;p&gt;Jenkins is a great tool because of the exclusive advantages that it serves. Let’s have a look at a few of them:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The tool is open-source and has an extensive development community.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It is easy to install and get started with Jenkins.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jenkins has more than 1000 plugins to simplify your work. If you are not able to find a plugin to fulfill your need, then you can code and share the same with the community.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jenkins is free of cost.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It is portable to other major platforms because of the fact that it is written in Java.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now, you can check out the integration setup process.&lt;/p&gt;

&lt;h2&gt;
  
  
  Let’s Deploy
&lt;/h2&gt;

&lt;p&gt;We have provided a step-by-step guide here for an easy understanding of the concept. We shall build Node application, React application, and host it on Server.&lt;/p&gt;

&lt;p&gt;STEP-1: Setup an Ubuntu server and render a static IP address&lt;/p&gt;

&lt;p&gt;So first, we will host the application on Server. You will understand it better through this below-shared diagram:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--shNVISim--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/4yM-m8qcicX5ouxyvns5BFaR331MB0lW7PG_GVi_YVsOD_YDB6P-lQkrY8cqp7a87DL7wsPIHAIejtxIP2_BPhMX5eGQk8J2FIU8ZBZ0VL0ZQCPvke7tsVBrx7L0fKlw4po33FvH" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--shNVISim--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/4yM-m8qcicX5ouxyvns5BFaR331MB0lW7PG_GVi_YVsOD_YDB6P-lQkrY8cqp7a87DL7wsPIHAIejtxIP2_BPhMX5eGQk8J2FIU8ZBZ0VL0ZQCPvke7tsVBrx7L0fKlw4po33FvH" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You will have to install a ubuntu server in the system. For this purpose, make an entry in, etc/Netplan/.yaml as shown below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uxqMk0BZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/upew-01NP7JOhSvFtMcwsRk_RMxZkoijCrNrDcGLEjiBzzQsvnusIJm-yqCCrt7uIBLcO215pAfu9ZsBFdFBkUmBv0lpIckXw_dVYJD2BtZ14-iXGwqtEsCx6S51CC-Rh7MWQV87" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uxqMk0BZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/upew-01NP7JOhSvFtMcwsRk_RMxZkoijCrNrDcGLEjiBzzQsvnusIJm-yqCCrt7uIBLcO215pAfu9ZsBFdFBkUmBv0lpIckXw_dVYJD2BtZ14-iXGwqtEsCx6S51CC-Rh7MWQV87" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you are done, then just save the file and apply the changes by executing the following command:&lt;/p&gt;

&lt;p&gt;sudo netplan apply&lt;/p&gt;

&lt;p&gt;After setting up the static IP, you will have to do the port forwarding so that we can access our application through public IP outside the local network.&lt;/p&gt;

&lt;p&gt;STEP-2: Install Jenkins&lt;/p&gt;

&lt;p&gt;We shall need the Java runtime environment to execute Jenkins. You can check for the same below:&lt;/p&gt;

&lt;p&gt;sudo apt-get update&lt;/p&gt;

&lt;p&gt;sudo apt-get install OpenJDK-8-JDK&lt;/p&gt;

&lt;p&gt;java -version&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--G4o3uczc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/zbvB_PBpb1-dGPtB2eL0rCSxk7SHqYvV6kVO_LN7yLbnDUEAuriXG250EYXajpMTNUXhPJq5E5HFF2CBA7Clxt7926v4g3_n0bPxfIQAsOTGwwcmrI8JeQQImUfgB3-hL-niymst" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--G4o3uczc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/zbvB_PBpb1-dGPtB2eL0rCSxk7SHqYvV6kVO_LN7yLbnDUEAuriXG250EYXajpMTNUXhPJq5E5HFF2CBA7Clxt7926v4g3_n0bPxfIQAsOTGwwcmrI8JeQQImUfgB3-hL-niymst" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you are done with setting up the Java runtime environment, then you can install Jenkins as shown below:&lt;/p&gt;

&lt;p&gt;wget -q -O - &lt;a href="https://pkg.jenkins.io/debian-stable/jenkins.io.key"&gt;https://pkg.jenkins.io/debian-stable/jenkins.io.key&lt;/a&gt; | sudo apt-key add -&lt;/p&gt;

&lt;p&gt;sudo sh -c 'echo deb &lt;a href="http://pkg.jenkins-ci.org/debian"&gt;http://pkg.jenkins-ci.org/debian&lt;/a&gt; binary/ &amp;gt; /etc/apt/sources.list.d/jenkins.list'&lt;/p&gt;

&lt;p&gt;sudo apt-get install Jenkins&lt;/p&gt;

&lt;p&gt;sudo systemctl start Jenkins&lt;/p&gt;

&lt;p&gt;After the installation process is done, Jenkins shall launch automatically and we can visit the domain-name:8080 to access the same.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--alb__BUg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/ikORntdzkEAXXle1h1MxpyBTVUBS9YTsWUNLGche3mkqdFJf0RmjOcaH9okIr_hDN9Vc3oEUy6ZXGXdTjnOnZiBB-X21q2KscNKqwv45CNtUPJMbrtQCv702r9xnRXkxg-uTvxeV" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--alb__BUg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/ikORntdzkEAXXle1h1MxpyBTVUBS9YTsWUNLGche3mkqdFJf0RmjOcaH9okIr_hDN9Vc3oEUy6ZXGXdTjnOnZiBB-X21q2KscNKqwv45CNtUPJMbrtQCv702r9xnRXkxg-uTvxeV" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;STEP-3: Install NodeJS on Ubuntu Server&lt;/p&gt;

&lt;p&gt;We can start with installing the latest version of Node.js with Long-Term Support with the help of files in the &lt;a href="https://github.com/nodesource/distributions"&gt;NodeSource package&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;First, you will have to install NodeSource PPA to access its content but ensure at the same time that it falls in your home directory, and use curl to collect the installation script for the Node.js 10.x files as shown below:&lt;/p&gt;

&lt;p&gt;curl -sL &lt;a href="https://deb.nodesource.com/setup_10.x"&gt;https://deb.nodesource.com/setup_10.x&lt;/a&gt; -o nodesource_setup.sh&lt;/p&gt;

&lt;p&gt;You will be able to verify the content of such script with nano or your favorite text editor as shown below:&lt;/p&gt;

&lt;p&gt;nano nodesource_setup.sh&lt;/p&gt;

&lt;p&gt;Once you are done with inspecting the script, then you can run it under sudo as follows:&lt;/p&gt;

&lt;p&gt;sudo bash nodesource_setup.sh&lt;/p&gt;

&lt;p&gt;The personal package archive shall be included in our configuration. The local package cache will also get automatically updated. After running the Nodesource configuration script, we will be able to install the Node.js package as follows&lt;/p&gt;

&lt;p&gt;sudo apt install nodejs&lt;/p&gt;

&lt;p&gt;If you want to check which version of Node.js has been installed after executing the initial steps, then simply type:&lt;/p&gt;

&lt;p&gt;nodejs -v&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Q5syhVde--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/WTdw8wnmvnP0oulDfdgjcrgboQuryVTQp6hUUt6_V7o3mfar1W1pohiQ10lnGXRH2lneVc6FnzqddWKRQlRrQIH5ABu7AhThhGv9xesMKS4IKP90wXsgACkW6ie61qJrp8yrSVt8" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Q5syhVde--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/WTdw8wnmvnP0oulDfdgjcrgboQuryVTQp6hUUt6_V7o3mfar1W1pohiQ10lnGXRH2lneVc6FnzqddWKRQlRrQIH5ABu7AhThhGv9xesMKS4IKP90wXsgACkW6ie61qJrp8yrSVt8" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You should be able to observe that the package nodejs consist of the binary of nodejs, as well as npm, and a package manager for Node modules. Hence, there is no need to install npm separately.&lt;/p&gt;

&lt;p&gt;The npm makes use of a configuration file in our home directory to record the status of the updates. It will be created the first time you run npm. You can simply run this command to check that npm has been installed and then create the configuration file as shown below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qEpsA06I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/F7sfrbVTlxG39z0YA_xAvl5mnp2ZQLSwQc0Jz7IIjOXH0Q5hnuktJ3oqDUkDnqovdPL55RcB6bzwxs9nicTcvvBuJP9pOYdg6OA6WpLEKsyi6mvSdHrkdrqdYUwjM6fiUdmSObeL" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qEpsA06I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/F7sfrbVTlxG39z0YA_xAvl5mnp2ZQLSwQc0Jz7IIjOXH0Q5hnuktJ3oqDUkDnqovdPL55RcB6bzwxs9nicTcvvBuJP9pOYdg6OA6WpLEKsyi6mvSdHrkdrqdYUwjM6fiUdmSObeL" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;STEP-4: Install the PM2 Process Manager&lt;/p&gt;

&lt;p&gt;Now at this step, we will have to install the PM2, which is a process manager for Node.js applications. With the help of PM2, it would become possible to force the apps to run as a daemon so that they can run in the background as a service.&lt;/p&gt;

&lt;p&gt;You can use npm to install the latest version of PM2 on your server:&lt;/p&gt;

&lt;p&gt;sudo npm install pm2@latest -g&lt;/p&gt;

&lt;p&gt;STEP-5: Complete the GitHub configuration&lt;/p&gt;

&lt;p&gt;We will be required to trigger a new build whenever a new push would be done to the repository and hence, it will become compulsory to configure Webhook in the first place.&lt;/p&gt;

&lt;p&gt;We can set up the hook at the repository, so that whenever a push has been done the Github shall notify the same Jenkins server, sending a POST request. After that, you can click on settings and then Webhooks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jeYEACf8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/_B55-0dD9S8leejUmysaYDEwmIvzn-rV0WeCPmCM3GbFvuGeMd5rkGxnQtSQsEIFphqnLhkh8ZzXDfFejPRvUPeatzKxLXKWRuwai6g9IDqktLOS0hDz0lCQfHN3CflQPQCIm0mu" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jeYEACf8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/_B55-0dD9S8leejUmysaYDEwmIvzn-rV0WeCPmCM3GbFvuGeMd5rkGxnQtSQsEIFphqnLhkh8ZzXDfFejPRvUPeatzKxLXKWRuwai6g9IDqktLOS0hDz0lCQfHN3CflQPQCIm0mu" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, we can add the Jenkins Webhook, but we will need the Jenkins Server IP, for configuring the same.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://192.168.1.4:8080/github-webhook/"&gt;http://192.168.1.4:8080/github-webhook/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zmGMSPTY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/ak9A2W1kirgaKv4h7BrKs05sc-ykM-uMQNywIyaR2cXg177s02Hf9qUdi3pqFulELbGxd3JSXsnMnah-jjT5WsepDDN4Q-0D4flekz0RE14Unjo7JyBpegeJXmMliGLmwdK54hwj" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zmGMSPTY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/ak9A2W1kirgaKv4h7BrKs05sc-ykM-uMQNywIyaR2cXg177s02Hf9qUdi3pqFulELbGxd3JSXsnMnah-jjT5WsepDDN4Q-0D4flekz0RE14Unjo7JyBpegeJXmMliGLmwdK54hwj" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now simply hit Add and then save it. We are now almost done. But we still have to create the deployment job at Jenkins and test the same.&lt;/p&gt;

&lt;p&gt;STEP-6: Creating a Jenkins freestyle job&lt;/p&gt;

&lt;p&gt;Hit the New Item in the main menu because that would be the first step for creating Jenkins freestyle job. On the next page, you can enter an item name like GitHub Project_Back-end and select the Freestyle project.&lt;/p&gt;

&lt;p&gt;Once you have clicked on OK, the configuration page shall appear, where you will have to set up:&lt;/p&gt;

&lt;p&gt;General:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FaIUBRJ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/ywASHAbhytObGGaEay4-KpVJ6AAXsbnCWugRmzbvlS2xovs2AuUT9zlHLJI_MHFLbmrb6bThjjG4pyrnyAoZV-WjrV5mEH33YdDJjt3x1jJDqvYgu42EjLVfACA3R7Q64B5fKBB2" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FaIUBRJ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/ywASHAbhytObGGaEay4-KpVJ6AAXsbnCWugRmzbvlS2xovs2AuUT9zlHLJI_MHFLbmrb6bThjjG4pyrnyAoZV-WjrV5mEH33YdDJjt3x1jJDqvYgu42EjLVfACA3R7Q64B5fKBB2" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Source Code Management:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ler6P6dk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/sZudxd-5Rnh50gYQUCl1vFqdf8kjQozaaUwoyfuo38Ilpcma6EFl3HuFBruI_SMsxLhGDpUDpYHvYBHEbYPG7qoaPjZiOQoPS7ZMCdmmUuVKIzTmaMlWTbx2N2pA5Yg2F5ga9m4c" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ler6P6dk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh4.googleusercontent.com/sZudxd-5Rnh50gYQUCl1vFqdf8kjQozaaUwoyfuo38Ilpcma6EFl3HuFBruI_SMsxLhGDpUDpYHvYBHEbYPG7qoaPjZiOQoPS7ZMCdmmUuVKIzTmaMlWTbx2N2pA5Yg2F5ga9m4c" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you have decided to construct a project from a private repository, then you will be required to add the credentials and then hit Add on the right. After that, select username as well as password. The username will be the username of GitHub and the password will be the GitHub password.&lt;/p&gt;

&lt;p&gt;Triggers:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aizDPGBT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/uw984LCFMb0epygXj0laPrVrcGbaCiaZjh7I9nDO4g3_mQN-EJYKH9Kjnce7qsed_S5HkZxLtBg8UGGEljXJNvoQZrAkSxphESz_x9my9Xy4qB_w2bqH-zI_gBhEnekZDrymKBoA" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aizDPGBT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/uw984LCFMb0epygXj0laPrVrcGbaCiaZjh7I9nDO4g3_mQN-EJYKH9Kjnce7qsed_S5HkZxLtBg8UGGEljXJNvoQZrAkSxphESz_x9my9Xy4qB_w2bqH-zI_gBhEnekZDrymKBoA" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Build:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2dU-Bnwe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/wk7k5ThiY8yKl1A53LSrnYhNqWxhLKfr05DIDxTpzVJSdOB7RjW1cLUPUE98adkHar3Egde4fMY55k68jMhURNEojAW3qlN702j3Ifn_KYXzkn_hJaqjT3vzLJ-pDes860IVDMX1" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2dU-Bnwe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh3.googleusercontent.com/wk7k5ThiY8yKl1A53LSrnYhNqWxhLKfr05DIDxTpzVJSdOB7RjW1cLUPUE98adkHar3Egde4fMY55k68jMhURNEojAW3qlN702j3Ifn_KYXzkn_hJaqjT3vzLJ-pDes860IVDMX1" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now after reaching the final step, we will have to inform Jenkins to install the dependencies.&lt;/p&gt;

&lt;p&gt;Final Output:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CsDlumjW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh5.googleusercontent.com/WWb2o8_UkAZtNctrEJqmy74gKQiVccEgOv2Xh-oUxd0DYRn1rgDn-XfbIPJnKYCzS0n-iTjEc_yyZ3f0QWqmxIg_TREhCMLyTAf6S3zj5_r7j-8F619iIiGeaRTUiOfeUMAcV5Lv" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CsDlumjW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh5.googleusercontent.com/WWb2o8_UkAZtNctrEJqmy74gKQiVccEgOv2Xh-oUxd0DYRn1rgDn-XfbIPJnKYCzS0n-iTjEc_yyZ3f0QWqmxIg_TREhCMLyTAf6S3zj5_r7j-8F619iIiGeaRTUiOfeUMAcV5Lv" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Conclusion&lt;/p&gt;

&lt;p&gt;We have finally completed the deployment and we are all set up. With the Jenkins server and the application server up, every new push shall trigger a new deployment into our server. It is as easy as that. Once done, then you will be able to bag the merits of this amazing tool and see them in the action.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How To Get Started With Apache Cassandra – A Distributive NoSql Database</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Wed, 13 Jan 2021 08:30:17 +0000</pubDate>
      <link>https://dev.to/appwrk/how-to-get-started-with-apache-cassandra-a-distributive-nosql-database-21cg</link>
      <guid>https://dev.to/appwrk/how-to-get-started-with-apache-cassandra-a-distributive-nosql-database-21cg</guid>
      <description>&lt;p&gt;Apache Cassandra is an open-source distributed database management system that is designed to handle huge amounts of data across various data centers and clouds, it provides high availability with no single point of failure.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VmbYY4hO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/p1qas1woxv2z233un9y8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VmbYY4hO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/p1qas1woxv2z233un9y8.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It’s highly scalable, written in java, and offers many features that other relational and NoSQL databases cannot. Originally it was developed by Facebook for performing inbox search, they open-sourced it in 2008, and Cassandra became a part of Apache Incubator in 2009. It owns the ability to handle high volumes that make it beneficial for mega-corporations. Currently corporate giants such as Facebook, Apple, Instagram, Spotify, Twitter, Uber, Cisco, eBay, Netflix, and Rackspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Cassandra?
&lt;/h2&gt;

&lt;p&gt;Do you want a more flexible data model in the world of relational databases? Get started with a Cassandra database that can scale up to meet any number of concurrent users and run fast blazingly. This database is with no single point of failure and can easily distribute data to multiple data centers, geographies, and the cloud.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture of Cassandra
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UBzhxP_4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qw9hzcjrdknfphwovel8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UBzhxP_4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qw9hzcjrdknfphwovel8.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Cassandra Architecture consists of the following elements:&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Element&lt;/strong&gt; - Function&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Node&lt;/strong&gt; - It is a basic data component where the data is stored.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Datacenter&lt;/strong&gt; - It is a collection of all related networks of nodes and it can be a virtual or physical datacenter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cluster&lt;/strong&gt; - It consists of one or more data centers and it can reach any required locations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Commit Log&lt;/strong&gt; - The write operations are kept in the commit log first and are used for crash recovery(the database is recovered to a usable and consistent state).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mem-Table&lt;/strong&gt; - Once the data is stored in the commit log, it’s kept in mem-table (memory table) and stored there until the threshold is reached.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SSTable&lt;/strong&gt; - Sorted-String Table is a disk file to store MemTable data after it reaches the threshold. SStables are kept on disk in sequence and maintain the database table.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Apache Cassandra is Unique?
&lt;/h2&gt;

&lt;p&gt;Cassandra is one of the widely-used and most efficient NoSQL databases. One of the key benefits of the system is that it provides high service availability and consistent access with no failure. Data management is a key business factor a corporate needs to implement because the loss of data is not truly affordable. It handles and manages a huge amount of data across multiple servers. It is able to write down a huge amount of data quickly without interfering with the reading efficiency. It is accurate as well as fast for both small or large volumes of data. It provides horizontal scalability, allows the user to meet the sudden hike in demand as it enables the user to accommodate more customer data. It clearly offers massive data handling, operational simplicity, continuous availability, and easy data distribution.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Cassandra Works?
&lt;/h2&gt;

&lt;p&gt;The distributed design of Apache Cassandra is built on Amazon’s Dynamo and the peer-to-peer data system is based on Google’s Big Table. The fundamental architecture includes a cluster of nodes and everyone can write a request or accept a read. The key aspect of architecture is that all nodes can communicate among themselves and there is no master node.&lt;/p&gt;

&lt;p&gt;Node is a particular location where data is stored in a cluster, cluster consist of a complete set of the data center where the data is stored and processed. The related nodes are paired together in the data centers. As a result, nodes can be added, the system can be expanded, concurrent users can be handled across the system.&lt;/p&gt;

&lt;p&gt;The structure provides data protection and ensures data integrity with the commit log. The commit log keep backup thus ensures that data doesn’t get lost at any chance. In the memtable is the memory where Cassandra data is entered and indexed. There is always an active memtable per table and when a memtable threshold is reached it’s directly pushed to disk and converted into SSTables. In simple words, whenever the commit log gets full it triggers the flush to transfer memtables content to SStables. Commit log is one of the most important key aspects of Cassandra architecture as it provides a failsafe for data integrity and protection.&lt;/p&gt;

&lt;h2&gt;
  
  
  When To Use Cassandra?
&lt;/h2&gt;

&lt;p&gt;Cassandra is used to storing a huge amount of data at a rapid speed. For example, while processing stock market data or telecom switch data, a large volume of data is generated every second. To search the data quickly you need to fully index the data where the data is sorted in a predetermined order. Using a key you can search the fully indexed data, thus the required information is fetched quickly. Cassandra enables you to add more data when data size grows so you can use it when you are expecting that there will be an upsurge in data size. The data clusters are highly fault-tolerant with no single point of failure and provide good performance for both read and write purposes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;In this blog, you have learned about how Cassandra is unique, how does it work, its architecture, its advantages, and when to use it? Cassandra is a great solution for mega corporates. Ideal database management system for businesses that can’t afford data loss or can’t let their database down when a server is disrupted. It’s easy to scale, easy to use, for consistently growing businesses. Apache Cassandra architecture is built to hold a huge amount of data of the concurrent users across the system. Despite being decentralized, it enables users to access and control data. With no single point of failure, the system delivers constant availability, data loss, and deduct downtime. You don’t need to shut down the system to accommodate more data, just add on the required number of new nodes. These surprising benefits altogether tempt major companies to implement Apache Cassandra.&lt;/p&gt;

</description>
      <category>database</category>
      <category>softwaredevelopment</category>
      <category>nosql</category>
      <category>cassandra</category>
    </item>
    <item>
      <title>What are the React Libraries you Must Know?</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Mon, 28 Dec 2020 11:21:36 +0000</pubDate>
      <link>https://dev.to/appwrk/what-are-the-react-libraries-you-must-know-ej0</link>
      <guid>https://dev.to/appwrk/what-are-the-react-libraries-you-must-know-ej0</guid>
      <description>&lt;p&gt;Every tech-savvy needs to constantly explore to keep themselves updated with the latest trends. To adjust to the ever-changing React ecosystem, it is important to learn about its latest libraries. These libraries are providing new possibilities but most importantly, making everything easier for the development environment. An individual can build his or her own team library by using bit.dev. The developers can Isolate the components codebase and share the collection in the library.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fgma3mt980ljdkrsbazuu.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fgma3mt980ljdkrsbazuu.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#1. Create React App&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Facebook developers have made a command-line interface known as Create React App to build React.js project easily. It can build structures of files, catalogs, and have tools to build, test, and launch applications. This library must be included in every React project to save plenty of time. Otherwise, time is spent on manual configuration and manual setup. You just have to execute a Create &lt;a href="https://appwrk.com/blog/6-reason-why-you-need-to-move-from-angular-to-react/" rel="noopener noreferrer"&gt;React App&lt;/a&gt; and it does all for you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#2.  React Router&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The React Router consists of a set of navigational components that synchronizes the &lt;a href="https://appwrk.com/ui-ux-development/" rel="noopener noreferrer"&gt;UI components&lt;/a&gt; with the browser's address. Additionally, stable transitions for screens, server-side rendering, and nesting support.&lt;/p&gt;

&lt;p&gt;There are Boilersplates having reusable code blocks that enable the configuration of a number of libraries simultaneously. It enables to make identical copies of code blocks so, that it can be reused later on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#3. React Boostrap&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;React Bootstrap is built with compatibility in mind. It enables you to have more control than other libraries to integrate and reuse UI components. It is prebuilt with the help of Bootstrap components and delivers a smooth interface-handling experience.&lt;/p&gt;

&lt;p&gt;Bootstrap stylesheet enables to use of compatible Bootstrap themes. The developer can code efficiently and quickly by implementing fast coding through a reusable coding method.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#4. React - Motion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;React Motion is a prominent animation library and has a spring configuration as well to determine the animation. So, it eradicates all your worries regarding controlling complexities and duration. This animation library simplifies the development process with React components by using stiffness, damping, and precision methods.&lt;/p&gt;

&lt;p&gt;The React-Spring API fills the gap between the declarative and imperative approaches. You can also avail of secure and shared - transitions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#5. Redux&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Redux is a free-standing library with a predictable state container. Redux is primarily implemented with &lt;a href="https://appwrk.com/blog/what-are-the-react-libraries-you-must-know/" rel="noopener noreferrer"&gt;React UI library&lt;/a&gt; components and it can be also used with Vue, Ember, Vanilla JS, and Angular, etc. React and are independent of each other. Redux can be used with both backend and frontend libraries. With a reduced number of props or callbacks for connecting the state to components. Redux is the developer's best friend that allows writing code consistently and it can execute well in various platforms and can be perform testing easily. It needs UI binding to link with the UI frameworks and provides a vast number of addons.&lt;/p&gt;

</description>
      <category>react</category>
      <category>reactapp</category>
      <category>uicomponents</category>
      <category>reactdevelopers</category>
    </item>
    <item>
      <title>Top 9 Reasons Why Your Business Needs A Website In 2020</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Thu, 03 Dec 2020 11:39:36 +0000</pubDate>
      <link>https://dev.to/appwrk/top-9-reasons-why-your-business-needs-a-website-in-2020-4oh0</link>
      <guid>https://dev.to/appwrk/top-9-reasons-why-your-business-needs-a-website-in-2020-4oh0</guid>
      <description>&lt;p&gt;Corona Virus has influenced consumer behavior all across the world in 2020. Although, this pandemic situation has taught the human race that with the help of technologies, we can contribute to balance the world economy right from home. It has pushed entrepreneurs to promote their business through websites because most people are searching for a business online to fulfill their requirements. Today, the success of your business, up to a large extent, depends upon your online presence. Your business can only grow if the right audience can find you online. In this digital era, the majority of customers before purchasing, visit the company’s website. Your strong online presence has the potential to generate more revenue.&lt;/p&gt;

&lt;p&gt;There are numerous IT firms delivering website building services to create your business digital presence and APPWRK IT Solutions is one of them. The good news is that we can build a user-friendly  &lt;a href="https://appwrk.com/services/web-development/"&gt;custom website&lt;/a&gt;  at reasonable expenses. Let’s learn more about why every business needs a website in 2020.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4KKCaMg5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tudsou02u905mczd3hlb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4KKCaMg5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tudsou02u905mczd3hlb.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Branding
&lt;/h2&gt;

&lt;p&gt;The website showcases your brand for your target audience. To lead your competitors in the market, the most important thing you must do is to clearly present who you are, what you stand for, and exactly what purpose you are serving. Thus, the customers get to know about you and get convinced easily to buy from you. Without a website, it’s quite difficult to address the audience about the reliable quality products and services.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Credibility
&lt;/h2&gt;

&lt;p&gt;The website increases the credibility of your organization. There are several service providers in the market but to make your business stand out, you need an effective website that can clearly provide quality information to visitors. In the absence of a website, the audience may question your business legitimacy. With the help of your website, you can make a good impression. Users judge business credibility based upon the website and step forward to build trustful relationships.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Organic Traffic
&lt;/h2&gt;

&lt;p&gt;Once your business is online, try to optimize your website with  &lt;a href="https://appwrk.com/services/digital-marketing-services/"&gt;SEO&lt;/a&gt;. It would assure high chances of showing up your web page in Google search results. This means whenever people search for any product or service, your website will be shown up in the result list. Thus you can drastically increase your customer volume. More than 81 % of consumers before making a purchase are going to search for the products and services online.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Customer Service
&lt;/h2&gt;

&lt;p&gt;Customers most of the time make a call to ask simple questions regarding operation hours and location. If any of the calls are missed, then it means that you left the customer unhappy. Calls during working hours also distract the employees from focusing on current tasks executing in the company. Only a website can cut down the number of calls and would increase your overall productivity. The website must help customers to find all useful information so that they don’t need to make calls and ultimately provide a great user experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Latest Updates
&lt;/h2&gt;

&lt;p&gt;Websites make sure your business is online 24/7. It acts as a medium to inform your customers about the latest updates through posts. Thus, you can regularly update about everything you are doing in the catalog. Whether it’s about the sale promotion or new product launch, a business website would make it easier for you to update information quickly to your customers. Once a developer builds your website, then it’s important to update it on a regular basis.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bCIN-CIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zpl5w8zk5k0ykkoh4bgc.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bCIN-CIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zpl5w8zk5k0ykkoh4bgc.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Digital Marketing
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://appwrk.com/services/digital-marketing-services/"&gt;Digital marketing&lt;/a&gt;  campaigns can grow your business and drive traffic to your website for generating increased numbers of leads. The ad campaigns mostly target the qualified customer visiting the website to get high ROI. This is something which depends upon the historic traffic so, it’s better to build a website before you plan to run ads. Your online presence opens up business opportunities for you all across the globe. Strategic websites have the capability to attract more customers for the company's benefits.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Customer Testimonials
&lt;/h2&gt;

&lt;p&gt;Display customer testimonials and reviews prominently on your site for establishing social proof. If your company has appeared in newspaper articles or popular blogs, then you can feature these on your web page. Customers read out reviews and customer feedback to check whether the information provided on the website is reliable and authenticated. You can permanently save the reviews on your site and access it even if the third party removes it in the future.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Customer Encouragement
&lt;/h2&gt;

&lt;p&gt;Embed your website with maps as it would make it easy for your audience to get your business location without wasting your time. Host events to attract more people to your company and post it on your site. Add a contact form on your website to avoid email spam. Publish contact information in the header or footer which would appear on each and every page for easy convenience.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Deal online
&lt;/h2&gt;

&lt;p&gt;Websites make sure your business is online 24/7. It acts as a medium to inform your customers about the latest updates through posts. Thus, you can regularly update about everything you are doing in the catalog. Whether it’s about the sale promotion or new product launch, a business website would make it easier for you to update information quickly to your customers. Once a developer builds your website, then it’s important to update it on a regular basis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Website is the key to your company’s success, so every business needs a website in 2020. Build your business website right now and you can improve it later. Professionally designed websites are having the potential to differentiate your brand in the industry to increase revenues. It will boost your services online to grow your business. It provides you the opportunity to appear in the search list of your target customers. You need to invest some pennies and in returns, you can earn high revenue over the long run. The website must act as the hub of all online services and products your business delivers. Use Google tools and social media channels to attract customers and satisfy customers through solving their problems on the website. Create tandems of popular platforms and present them on your page to get maximum attention. Get your  &lt;a href="https://appwrk.com/services/web-development/"&gt;website&lt;/a&gt;  now.&lt;/p&gt;

&lt;p&gt;Originally Posted at - &lt;a href="https://appwrk.com/blog/7-incredible-tools-for-react-developers-in-2020/"&gt;https://appwrk.com/blog/7-incredible-tools-for-react-developers-in-2020/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
    </item>
    <item>
      <title>Cross-Platform Frameworks For Mobile App Development</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Tue, 01 Dec 2020 09:32:07 +0000</pubDate>
      <link>https://dev.to/appwrk/cross-platform-frameworks-for-mobile-app-development-5681</link>
      <guid>https://dev.to/appwrk/cross-platform-frameworks-for-mobile-app-development-5681</guid>
      <description>&lt;p&gt;Mike is a millennial who wakes up every morning with the vibration of his smartwatch, order breakfast from the Zomato app and rush to book a taxi to reach the office. It is a truth that everyone today is leading a mobile application savvy life to make things easier. To survive in this Darwinian digital world, your business will need to deliver exactly what the customer needs. To respond to the ever-changing consumer requirements, your business should be accessible by modern society devices – smartphones.&lt;/p&gt;

&lt;p&gt;There are some budget barriers for native development because different platforms have different coding needs. But now, the best cross-platform frameworks for Mobile app development can be used to develop the application for Android and iOS.&lt;/p&gt;

&lt;h2&gt;
  
  
  Outlined Upsides of Cross-Platform Mobile app development Frameworks
&lt;/h2&gt;

&lt;p&gt;Emerging technology to build engaging hybrid apps is changing the way you deal with businesses today! It is enhancing mobility in our everyday routine. Let’s have a look at the basic fundamentals of cross-platform mobile app development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code Reusability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One time coding and you are done. It eliminates the repetitive coding task for different platforms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fast Development Time&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To develop a single codebase for multiple platforms can cut down development time and efforts by 60-80 %. You can build intuitive and rich mobile applications in less time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reduced Cost&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In cross-platform mobile app development, fewer resources and time are involved which helps to save costs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Easy Integration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The cross-platform framework allows for cloud integration with the help of hosting services. A hybrid app means the business app can take the fits of all cloud hosts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Easy Maintenance&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is easy to maintain a single source code with the help of updated packages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Check out the best cross-platform mobile app development frameworks below:&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  React Native
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3VGajqzM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/react.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3VGajqzM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/react.png" alt="enter image description here"&gt;&lt;/a&gt;&lt;br&gt;
React Native is a trusted development framework launched by Facebook in 2018. It has large open-source community support which allows fixing bugs easily. This technology features lightning-fast performance and the codes are highly reusable. React is written in Javascript which is the most popular programming language and has huge community support.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  High compatibility with third-party plugin&lt;/li&gt;
&lt;li&gt;  Declarative API to build predictive UI&lt;/li&gt;
&lt;li&gt;  Inbuilt library of components&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Flutter
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1P5HK6so--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/flutter.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1P5HK6so--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/flutter.png" alt="enter image description here"&gt;&lt;/a&gt;&lt;br&gt;
Google introduced Flutter cross-platform framework in 2017. This development kit is designed to assist in the development of Android and iOS apps. Flutter apps can easily execute on multiple platforms uniformly. It allows the developer to refresh and see instant changes made through the hot reload features. It makes the development process in Flutter fast and easy. You can use inbuilt motion APIs, Cupertino widgets, design material to provide a great mobile app user experience. Google Ads, Alibaba eCommerce, and Hamilton Musical use the Flutter framework.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Easy and quick development&lt;/li&gt;
&lt;li&gt;  Reduced the testing efforts&lt;/li&gt;
&lt;li&gt;  Strong support of widgets&lt;/li&gt;
&lt;li&gt;  Inbuilt Cupertino widgets and material design&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Xamarin
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JviD09Rh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/xamarin.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JviD09Rh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/xamarin.png" alt="enter image description here"&gt;&lt;/a&gt;&lt;br&gt;
Xamarin is .Net based app development framework launched by Microsoft. Being open-source and cross-platform, it offers a development environment with API, backend, components, and much more. Developers can build native apps for iOS, Android, Windows, MacOS, TvOS, and Watch OS using C# and .Net in this platform. Worldwide enterprises and businesses rely upon the .Net framework. You can share 75% of code across various platforms here, which makes the development process faster.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Versatile back-end structure&lt;/li&gt;
&lt;li&gt;  Diagnostic tools and application loader&lt;/li&gt;
&lt;li&gt;  Google emulator management&lt;/li&gt;
&lt;li&gt;  Strong community contributors&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Ionic
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NNqac--L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/ionic.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NNqac--L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/ionic.png" alt="enter image description here"&gt;&lt;/a&gt;&lt;br&gt;
Ionic is an open-source framework for front-end development. It is based on React and Angular JS. Developers can access HTML syntax to add attractive features. Ionic makes use of Cordova plug-ins that are compatible with most of the standard app APIs like GPS, camera, audio recorder, etc. It is mostly used to build progressive and interactive web applications. Ionic Studio is a powerful lightning version of Ionic. Install it on your local device to easily visualize the development ecosystem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Stable and powerful development platform&lt;/li&gt;
&lt;li&gt;  Intuitive UI components and fast development&lt;/li&gt;
&lt;li&gt;  Complete control of app development&lt;/li&gt;
&lt;li&gt;  Evergreen developer’s community(+5 Million)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Node.Js
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kOzdKnjI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/node-js.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kOzdKnjI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://appwrk.com/wp-content/uploads/2020/10/node-js.jpg" alt="enter image description here"&gt;&lt;/a&gt;&lt;br&gt;
Node.JS is a powerful open-source framework built on Javascript. It is a back-end technology that can be used with React Native for &lt;a href="https://appwrk.com/blog/best-5-cross-platform-frameworks-for-mobile-app-development/"&gt;cross-platform mobile app development&lt;/a&gt; and can handle multiple processes at a time. It provides server-side and networking app development. Inherently the platform is highly responsive and efficient. The framework is loaded with a rich library of Javascript modules to simplify the development process. It delivers perfect and smooth functioning apps. You can move across the API asynchronously without waiting for the data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Huge inbuilt library support&lt;/li&gt;
&lt;li&gt;  Fast execution&lt;/li&gt;
&lt;li&gt;  Reliable and impressive performance&lt;/li&gt;
&lt;li&gt;  APIs is asynchronous&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you are a NodeJS developer and want to improve your development game, then feel free to navigate this blog-  &lt;a href="https://appwrk.com/blog/5-tips-to-accelerate-your-node-js-development-process/"&gt;&lt;strong&gt;5 Tips to Accelerate Your Node.js Development Process&lt;/strong&gt;.&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Mobile application development has evolved from single platform applications to cross-platform applications. With these evolutions, the development trend has witnessed a great shift in script, code, integration, development, platforms, and deployment. we have gone through the best cross-platform frameworks for mobile app development. It’s important to select the right mobile app framework for your project.&lt;/p&gt;

&lt;p&gt;Originally Posted at - &lt;a href="https://appwrk.com/blog/best-5-cross-platform-frameworks-for-mobile-app-development/"&gt;https://appwrk.com/blog/best-5-cross-platform-frameworks-for-mobile-app-development/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>mobileappdevelopment</category>
      <category>appdevelopment</category>
      <category>frameworks</category>
      <category>development</category>
    </item>
    <item>
      <title>Social Media Marketing Tips In 2020</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Wed, 25 Nov 2020 12:29:05 +0000</pubDate>
      <link>https://dev.to/appwrk/social-media-marketing-tips-in-2020-5e2k</link>
      <guid>https://dev.to/appwrk/social-media-marketing-tips-in-2020-5e2k</guid>
      <description>&lt;p&gt;&lt;strong&gt;“Torture the data, and it will confess to anything.” – Ronald Coase&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Telemarketer rings your phone every day to get signed up for sale. Now lead generation has shifted dramatically to digital strategies from those landline days. The outbound and inbound leads generated digitally actually work out more efficiently. &lt;/p&gt;

&lt;p&gt;A lead is an individual who shows interest in your service or product in any way. Organization contacts the leads after they show some sort of interest in the brand.  The organization collects information about leads and reach out to them for follow up. Social media channels have become the most important tool for lead generation for every marketing strategy. If you have convinced the audience to click on your link, don’t disappoint visitors with sloppy pages. Design a user-friendly landing page to provide users seamless navigation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Xqbc2rJF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/o3wiqs8syxybkxsxx7cq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Xqbc2rJF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/o3wiqs8syxybkxsxx7cq.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lead Qualification&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Marketing Qualified Lead (MQLs)&lt;/strong&gt;&lt;br&gt;
MQLs are leads who are in contact with your marketing teams and indicated an interest in your offers but don’t want to contact sales calls. MQL contact through landing page form, visit your website or add your product in the cart.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sales Qualified Lead (SQLs)&lt;/strong&gt;&lt;br&gt;
SQLs are leads whose actions show that they want to become a paying customer. They fill the inquiry form to contact the organization to access your services or product.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Qualified Lead (PQLs)&lt;/strong&gt;&lt;br&gt;
PQLs are those who already have used your service or product and show interest to become a long-term paying customer.  These leads approach those organizations that offer a free trial, then continue once they are satisfied.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://appwrk.com/blog/how-to-generate-leads-from-social-media-marketing-in-2020/"&gt;Social Media Lead Generation Potential&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Social media has reduced marketing costs by 45% for businesses. &lt;/li&gt;
&lt;li&gt;Leads generated from social media grew, businesses by 24%.&lt;/li&gt;
&lt;li&gt;A lead costs $0.80 on Facebook and $2.50 on Google.
## How to generate leads from Social Media Marketing?&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Gated Content
&lt;/h3&gt;

&lt;p&gt;Gated content is a form attached to the social media lead capture form. It’s the easiest and primary way to acquire leads. Users will be directed from any social media channel or search engine, so to access the content visitors need to provide personal contact information like email or phone number. It’s a pretty clear and straightforward approach to grab leads. But if your brand is not widely trusted, gating assets can deter your visitors who are looking for a quick solution.&lt;br&gt;
Bottom Line: You must not over-gate all your content.&lt;/p&gt;

&lt;h3&gt;
  
  
  Social Media Remarketing
&lt;/h3&gt;

&lt;p&gt;You know whenever you check for a bicycle on Google and then the bicycle follows you back across your social media accounts for the next few days. This is actually another strategy to generate leads. Just put sponsored ads on a social network to grab the attention of the target audience. Organizations follow this tactic to reach potential customers.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AoSZ4dFu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/psfy62pw4lp9l3w09pju.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AoSZ4dFu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/psfy62pw4lp9l3w09pju.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Clickable Content
&lt;/h3&gt;

&lt;p&gt;You need to create compelling content, the visitor will click only if they found the content interesting. As everyone is competing to grab attention. To achieve your goal you need to tailor optimize creative content. Make sure to attach a clear link and call-to-action to your click-worthy content.&lt;/p&gt;

&lt;h3&gt;
  
  
  Webinar and Video Streaming
&lt;/h3&gt;

&lt;p&gt;Video content on social media is seriously taking off. Marketers know very well that the webinar, hang out, Livestream is a goldmine for generating sales leads. Before, hosting any Livestream you need to know basic insights about an audience for converting them into leads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use this format to attract ideal buyers:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Learn whom to invite and advertise.&lt;/li&gt;
&lt;li&gt; Research for in-depth coverage of the topic.&lt;/li&gt;
&lt;li&gt; Promote webinars on social media platforms.&lt;/li&gt;
&lt;li&gt; Highlight key-points on the registration page.&lt;/li&gt;
&lt;li&gt; Connect the video session to your site.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Engage and sell socially
&lt;/h3&gt;

&lt;p&gt;Quora or Reddit platforms are built to share information, advice, and to ask questions within niche relevant communities. To grow your target audience you need to join more and more communities. To collaborate with communities ask questions, post information, offer recommendations thus you can prove your authenticity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Break Down the Social Media Platforms
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Twitter&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Twitter is a well-known media platform. You can start with AMAs (Ask Me Anything) campaign to interact with visitors. Leave them to wanting to explore more. If people ask questions direct them to your blog or relevant content on your site. Involve influencers to entice the audience through their own social handle.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Facebook&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Facebook can be used to engage the audience in a conversation. Before you post your content try to engage local members first to know the audience's vibe. Then craft content to ignite conversations to drive visitors to your site. Ask the friends and followers to share your content through their profile for wider reach.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--raxvLgDi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ev5ne77trkmnszgshf6h.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--raxvLgDi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ev5ne77trkmnszgshf6h.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;LinkedIn aims to connect the business world. This platform act as the best source of generating leads, especially for marketers and B2B companies. Users here are knowledge seekers so to grow your following you need to post engaging information. You can embed CTAs to slide decks while sharing posts to direct the audience to your site. Link SlideShare to your profile to improve your online visibility.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Reddit&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;To reach the target audience you need to connect to the niche audiences by offering them with reliable information. Reddit is not so user friendly, you can’t throw your links freely. If you walk in this place as you own it, then you may get trolled or even get removed. Understand the personality and drop hints to visit your site accordingly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Leads generated! Once you have all your leads, it’s time to go for some outreach.&lt;/p&gt;

&lt;p&gt;To acquire leads you need to create gated content, join groups, share engaging content, light up a feed with the content storm to hit conversation. With videos and webinars, you can generate leads effectively and at a faster rate. Start with this tactic today to generate leads for your brand. A good  &lt;a href="https://appwrk.com/services/digital-marketing-services/"&gt;digital marketer&lt;/a&gt;  knows well to nurture the leads to earn more revenues. Set up a Google Analytics tracker on your website to track and monitor your leads. Take advantage of targeting tools available in social media to reach the right audience. Always remember to run different campaigns for separate segments of audiences.&lt;/p&gt;

&lt;p&gt;Previously Published at - &lt;a href="https://appwrk.com/blog/how-to-generate-leads-from-social-media-marketing-in-2020/"&gt;https://appwrk.com/blog/how-to-generate-leads-from-social-media-marketing-in-2020/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>digitalmarketing</category>
      <category>socialmediamarketing</category>
      <category>leadgeneration</category>
      <category>smmtips</category>
    </item>
    <item>
      <title>Reason Why You Need To Move From Angular To React?</title>
      <dc:creator>APPWRK IT Solutions</dc:creator>
      <pubDate>Thu, 19 Nov 2020 10:25:46 +0000</pubDate>
      <link>https://dev.to/appwrk/reason-why-you-need-to-move-from-angular-to-react-2634</link>
      <guid>https://dev.to/appwrk/reason-why-you-need-to-move-from-angular-to-react-2634</guid>
      <description>&lt;p&gt;First of all, React is a library and Angular is a framework. Developers these days have a complicated relationship with Angular. It is not wrong to say that they are getting stuck in the middle of a simple app for weeks. Even for simple features, you need to struggle a lot so, it's difficult to say that is it worth using Angular.&lt;/p&gt;

&lt;p&gt;Although you have thoroughly grasped the basic fundamentals which should be enough to code small features. Unfortunately, it didn't work out. That's why finally developers gave up Angular and adopted React as an alternative. The react learning curve is smaller and blending libraries is also easier.&lt;/p&gt;

&lt;p&gt;There are multiple reasons behind migrating from  &lt;a href="https://appwrk.com/blog/6-reason-why-you-need-to-move-from-angular-to-react/"&gt;Angular to React&lt;/a&gt;. Most of the developers are moving to React being closer to Javascript and to take full-fledged advantage of modularity. Let's have a look at some more reasons to convince why moving to react can be a good choice.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;React is an Innovative Space&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0ddViCzg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/e9bvbky2hchebrd58mjx.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0ddViCzg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/e9bvbky2hchebrd58mjx.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
React have building blocks that provide flexibility to pick a suitable block to fix your problem. It allows exchanging building blocks for experimentation and adoption, which makes it innovative.&lt;/p&gt;

&lt;p&gt;State management is done through MobX and Redux and enables exchangeability with Preact and Inferno.&lt;/p&gt;

&lt;p&gt;While this approach is not possible with Angular, as it delivers its own solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;JSX Syntax Blends with Javascript&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--eI-xyK89--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/up8kkzehil5nrxjh0z8c.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--eI-xyK89--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/up8kkzehil5nrxjh0z8c.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
React has its own syntax for building components called JSX. JSX is a blend of  &lt;a href="https://appwrk.com/"&gt;JavaScript and HTML&lt;/a&gt;. JavaScript can be implemented to manipulate and compose DOMs and to create in-built functionalities such as filters and maps. Thus the full potential JavaScript can be integrated into HTML code to speed up development by 4 times.&lt;/p&gt;

&lt;p&gt;On another side, Angular doesn't allow us to mix view and logic.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;React has a Simple API&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--80CQ1mh---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/eyvkfiqvqyv06qydnou4.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--80CQ1mh---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/eyvkfiqvqyv06qydnou4.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Components in React comes in lifecycle methods. There are 9 methods but you only need a couple of them to control components of a mature React application.&lt;/p&gt;

&lt;p&gt;There is an ES6 class component method SetState() which can update the internal components state.&lt;/p&gt;

&lt;p&gt;There are concepts like state and props regarding which you can explore in the official documentation of React. One can easily use the view library to solve problems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lightweight Components&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cQwT4vuB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/umdmpib58q0kmdlme43t.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cQwT4vuB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/umdmpib58q0kmdlme43t.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
React has two different types of components -&lt;br&gt;&lt;br&gt;
ES6 components and functional stateless components.&lt;/p&gt;

&lt;p&gt;The functional stateless components are functions without a boilerplate. It means you use them while accessing lifecycle methods or component state.&lt;br&gt;&lt;br&gt;
Thus it makes the components lightweight, small, and reusable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Functional Programming&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RmPv9-gV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/000oarstp93xe4ep21ht.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RmPv9-gV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/000oarstp93xe4ep21ht.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://appwrk.com/blog/"&gt;Functional programming&lt;/a&gt;  means it's having a declarative programming style in which everything is in mathematical function style. Programming in React is similar to JavaScript.&lt;/p&gt;

&lt;p&gt;In React functions are build with no side-effects which makes it so predictable - it always returns the same output and easily composable as higher-order functions are implemented for composition. Among the JavaScript library, React is known as the leader of functional programming.&lt;/p&gt;

</description>
      <category>angular</category>
      <category>react</category>
      <category>javascript</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
