<?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>Forem: Hammad Hassan</title>
    <description>The latest articles on Forem by Hammad Hassan (@hmadhsan).</description>
    <link>https://forem.com/hmadhsan</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%2F279976%2Fa5b56682-06a5-4d23-a897-3f2973cff77b.jpg</url>
      <title>Forem: Hammad Hassan</title>
      <link>https://forem.com/hmadhsan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/hmadhsan"/>
    <language>en</language>
    <item>
      <title>Series: How to structurize React Apps (Ep: Beginner Level)</title>
      <dc:creator>Hammad Hassan</dc:creator>
      <pubDate>Mon, 19 Apr 2021 12:08:46 +0000</pubDate>
      <link>https://forem.com/hmadhsan/series-how-to-structurize-react-apps-ep-beginner-level-500h</link>
      <guid>https://forem.com/hmadhsan/series-how-to-structurize-react-apps-ep-beginner-level-500h</guid>
      <description>&lt;p&gt;For any web or mobile application project, it is very necessary to structurize your code to possibly the best level, this not only does your code look clean but it also make other developers to understand it better when it will be structurize in a good manner. In this &lt;strong&gt;How to structurize React Apps&lt;/strong&gt; series I will be sharing the best possible practice to create a good structure of your React Application with 3 episodes of &lt;em&gt;Beginner&lt;/em&gt;, &lt;em&gt;Intermediate&lt;/em&gt; and &lt;em&gt;Advance&lt;/em&gt; level  with one real world web application. &lt;/p&gt;

&lt;p&gt;So let's start our first episode for beginner level react programmers by making a &lt;strong&gt;counter app&lt;/strong&gt;. So, go to anywhere in your machine directory where you want to create your project and run the command &lt;code&gt;npx create-react-app counter-app&lt;/code&gt;. It will create the default boiler plate provided by the react team. &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0EpgpNIl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rj8eyyrzlfyqv8gu0j7m.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0EpgpNIl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rj8eyyrzlfyqv8gu0j7m.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
In the above Image you can see that, I have created a very simple counter application in my &lt;code&gt;App.js&lt;/code&gt; file and have put the UI and logic code in the same component. Does this sound good to you? of-course NOT! So first thing here we should do to separate our UI and logic components to make them more readable and maintainable.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S7H1Bm5_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f19vqlf57jwe7hf1i8cm.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S7H1Bm5_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f19vqlf57jwe7hf1i8cm.PNG" alt="App.js"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_NRwrXXC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fp023rjs10dmdkt6849e.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_NRwrXXC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fp023rjs10dmdkt6849e.PNG" alt="Counter.js"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the above two images, you can see that I have separated my UI component of &lt;code&gt;App.js&lt;/code&gt; from my logical component of &lt;code&gt;Counter.js&lt;/code&gt;, which is something good to do as compare to our default boiler plate code but not the &lt;strong&gt;BEST PRACTICE&lt;/strong&gt;. &lt;br&gt;
So, what should we do to complete our article is to create the separate folders for UI which you could call &lt;code&gt;Presentational components&lt;/code&gt; and may name them as &lt;code&gt;Containers&lt;/code&gt; and other folder for logical code which you may simply call &lt;code&gt;Components&lt;/code&gt;. It is also need to note that I've written my UI code in my main &lt;code&gt;App.js&lt;/code&gt; file which is not good and what mainly should be in our &lt;code&gt;App.js&lt;/code&gt; file that would be discuss in my next &lt;em&gt;Intermediate&lt;/em&gt; level post.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pa65R4P---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tbfuzl08fsr58fov1a6i.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pa65R4P---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tbfuzl08fsr58fov1a6i.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
In the above Image you can see that I have created two separated folders named as &lt;code&gt;Containers&lt;/code&gt; for UI and &lt;code&gt;Components&lt;/code&gt; for logical code which is now making easy to understand the project structure.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--x6vP3qBQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pqduj3z47mlv0j7s3vrd.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--x6vP3qBQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pqduj3z47mlv0j7s3vrd.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Here in the above image you can see that in my &lt;code&gt;CounterUI.js&lt;/code&gt; file under &lt;code&gt;Containers&lt;/code&gt; folder, I have put only my UI code.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TBdkyXQ1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/basi1sb0ryvq4832v4iq.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TBdkyXQ1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/basi1sb0ryvq4832v4iq.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Here in the above image you can see that I have put only my logical code in my &lt;code&gt;Counter.js&lt;/code&gt; file under &lt;code&gt;Components&lt;/code&gt; folder.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vLsr2fo1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fmcbatfbc90ggl6bs845.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vLsr2fo1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fmcbatfbc90ggl6bs845.PNG" alt="Alt Text"&gt;&lt;/a&gt; &lt;br&gt;
And then I have just imported my &lt;code&gt;CounterUI.js&lt;/code&gt; file in &lt;code&gt;App.js&lt;/code&gt; file and now it is looking much cleaner and better to understand.&lt;/p&gt;
&lt;h2&gt;
  
  
  Key Notes
&lt;/h2&gt;

&lt;p&gt;1) Don't use your logical and UI code in the same file.&lt;br&gt;
2) Separate them into their respective folders to better &lt;br&gt;
   understand your react app structure. &lt;/p&gt;

&lt;p&gt;So, here I will be ending my article which was for beginner level react programmers who don't have any clear idea on how to structurize their small react apps. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://codesandbox.io/s/hmadhsan-series-react-structure-7xut1"&gt;Complete code link of sandbox&lt;/a&gt;&lt;br&gt;
&lt;iframe src="https://codesandbox.io/embed/7xut1"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>react</category>
      <category>structure</category>
      <category>reactproject</category>
    </item>
    <item>
      <title>Getting Started Guide for Restful API using Node, Mongo &amp; Express</title>
      <dc:creator>Hammad Hassan</dc:creator>
      <pubDate>Thu, 03 Dec 2020 05:06:13 +0000</pubDate>
      <link>https://forem.com/hmadhsan/getting-started-guide-for-restful-api-using-node-mongo-express-1gg6</link>
      <guid>https://forem.com/hmadhsan/getting-started-guide-for-restful-api-using-node-mongo-express-1gg6</guid>
      <description>&lt;p&gt;Before starting our guide let me introduce myself. I am Hammad Hassan a front-end (React) Developer. &lt;/p&gt;

&lt;h3&gt;
  
  
  Pre-Requisites
&lt;/h3&gt;

&lt;p&gt;I am assuming that you have some basic understanding of JavaScript and have already installed NodeJS too.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First you have to create a folder and run a command of
&lt;code&gt;npm init&lt;/code&gt; to create our package.json file.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Packages we need in this guide.
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const express = require("express");
const mongoose = require("mongoose");
require("dotenv/config");
const bodyParser = require("body-parser");

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So all you need is to install these packages by running a following command&lt;br&gt;
&lt;code&gt;npm i express mongoose dotenv body-parser nodemon&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After installing these packages, You have to make an app.js file (You can give any name)
and add the following code in it.
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    const express = require('express');
    const app = express();
    app.get("/", (req, res) =&amp;gt; {
    res.send("Hello from Node js");
    })
    app.listen(3000);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Now, go to your terminal and run &lt;code&gt;node app.js&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Here we are importing our express server package and we are storing it in our &lt;code&gt;app&lt;/code&gt; variable. &lt;/li&gt;
&lt;li&gt;Then &lt;code&gt;app.get&lt;/code&gt; method is simply stating our route with second argument of callback function in which we are sending what we want to print on our browser.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;app.listen(3000)&lt;/code&gt; is telling us on which port we want to see our server has responded. (Instead of 3000 you can name it whatever u want).&lt;/li&gt;
&lt;li&gt;Now, open your browser and hit 
&lt;code&gt;http://localhost:3000&lt;/code&gt; as url and you should see "Hello from Nodejs" printing up in your browser.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;
  
  
  Creating GET and POST API's
&lt;/h1&gt;

&lt;p&gt;Now, when you have learnt how to run the server in NodeJS, let's see how to create the the API's in NodeJS. We will be building an API to &lt;code&gt;GET&lt;/code&gt; and &lt;code&gt;POST&lt;/code&gt; some random data on to the server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Models&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now, create a new folder in your root directory name as &lt;code&gt;models&lt;/code&gt; and in this folder create a new file of &lt;code&gt;Posts.js&lt;/code&gt; (you can give any other name you want) and in this file add up the following code.
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const mongoose = require("mongoose");

const PostSchema = mongoose.Schema({
  firstname: {
    type: String,
    required: true,
  },
  lastname: {
    type: String,
    required: true,
  },
});

module.exports = mongoose.model("Posts", PostSchema);


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;Here, in our first line we are importing mongoose (a package, where data will be store).&lt;/li&gt;
&lt;li&gt;Then, we are creating a method, named as &lt;code&gt;PostSchema&lt;/code&gt; (give name of whatever you want) and in this method we are creating an object which is classifying the Schema (content) of our API.&lt;/li&gt;
&lt;li&gt;After that we are simply exporting the file so we can use this  &lt;code&gt;PostSchema&lt;/code&gt; method in our other files (components) too.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Routes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now comeback to your root directory and create a new folder name as &lt;code&gt;routes&lt;/code&gt; and then create a new file in this folder name as &lt;code&gt;posts.js&lt;/code&gt; (give whatever name you want) and in this file add up the following code&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const express = require("express");
const router = express.Router();
//importing model
const Post = require("../models/Posts");

//Get the posts
router.get("/", async (req, res) =&amp;gt; {
  try {
    const getPosts = await Post.find();
    res.json(getPosts);
  } catch (error) {
    res.json({ message: error });
  }
});

//Submit a post
router.post("/", async (req, res) =&amp;gt; {
  const newPost = new Post({
     firstname: req.body.firstname,
    lastname: req.body.lastname,
  });

  try {
    const savePost = await newPost.save();
    res.json(savePost);
  } catch (error) {
    res.json({ message: error });
  }
});

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;In first line we are importing the &lt;code&gt;express&lt;/code&gt; server.&lt;/li&gt;
&lt;li&gt;Then we need a &lt;code&gt;router&lt;/code&gt; method from express server so in second line we are creating a new variable name &lt;code&gt;router&lt;/code&gt; and storing our &lt;code&gt;express.Router()&lt;/code&gt; method in it.&lt;/li&gt;
&lt;li&gt;In 3rd line we are importing our Posts.js file from models folder so we can access the schema of our API we had created in that file and storing in the &lt;code&gt;Post&lt;/code&gt; constant.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Get Posts:&lt;/strong&gt; Then, we are declaring a &lt;code&gt;router.get&lt;/code&gt; method. In this method we are taking two arguments. First is specifying the route of the API and in second we are declaring a callback with two parameters of &lt;code&gt;req&lt;/code&gt; (request) and &lt;code&gt;res&lt;/code&gt;(response).&lt;/li&gt;
&lt;li&gt;After that, we are declaring try/catch statement.&lt;/li&gt;
&lt;li&gt;In &lt;code&gt;try&lt;/code&gt; block we are using javascript's &lt;code&gt;find&lt;/code&gt; method to get all the posts we are getting from our &lt;code&gt;Post&lt;/code&gt; model (imported above), then converting it into json format and storing it in the &lt;code&gt;getPosts&lt;/code&gt; variable.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In &lt;code&gt;catch&lt;/code&gt; block, we are catching the error, only if &lt;code&gt;try&lt;/code&gt; block fails to execute successfully. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Submit new Post:&lt;/strong&gt; To submit a new post to our server, we are using &lt;code&gt;router.post&lt;/code&gt; method, here we are also taking two arguments. First is specifying the route of the API and in second we are declaring a callback with two parameters of &lt;code&gt;req&lt;/code&gt; (request) and &lt;code&gt;res&lt;/code&gt;(response).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then, we are making a new variable name as newPost. In this, we are creating an instance of the object we had created in our &lt;code&gt;Posts.js&lt;/code&gt; file in (&lt;code&gt;models&lt;/code&gt; folder).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After that, we are declaring try/catch statement.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In &lt;code&gt;try&lt;/code&gt; block we are using javascript's &lt;code&gt;save&lt;/code&gt; method to save our new post in our mongo database from our &lt;code&gt;newPost&lt;/code&gt; variable we just declared above and converting it into a json format. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In &lt;code&gt;catch&lt;/code&gt; block, we are catching the error, only if &lt;code&gt;try&lt;/code&gt; block fails to execute successfully.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here, we are done with our &lt;code&gt;GET&lt;/code&gt; and &lt;code&gt;POST&lt;/code&gt; API requests. Now, just comeback to your &lt;code&gt;app.js&lt;/code&gt; file and add these lines of code.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;//Importing routes
const postsRoute = require("./routes/posts");

//Adding middleware
app.use(bodyParser.json());
app.use("/posts", postsRoute);

//connect to DB
mongoose.connect(process.env.DB_CONNECTION, { useNewUrlParser: true }, () =&amp;gt; {
  console.log("Connected to DB");
});
app.listen(8080);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Here first we are importing the route file.&lt;/li&gt;
&lt;li&gt;Then we are adding &lt;code&gt;middleware&lt;/code&gt;. A &lt;code&gt;middleware&lt;/code&gt; is actually a function that can access the request and response objects.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;app.use(bodyParser.json());&lt;/code&gt; means whenever route request will execute a bodyParser will run.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;app.use("/posts", postsRoute);&lt;/code&gt; means whenever we are on posts routes then this middleware will be called.&lt;/li&gt;
&lt;li&gt;Then, we are connecting our server to mongo DB. That topic is a bit lengthy so I haven't covered it here. You can create your free account to access mongoDB here at this: &lt;a href="https://account.mongodb.com/account/login"&gt;Link&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So, here we go. We have successfully made our first API in NodeJS. &lt;br&gt;
If you like this article then hit a favorite button to give it a big cheers up ❤&lt;/p&gt;

</description>
      <category>node</category>
      <category>express</category>
      <category>mongodb</category>
      <category>restapi</category>
    </item>
    <item>
      <title>Generate Release APK (app-release.apk) in React Native for Android</title>
      <dc:creator>Hammad Hassan</dc:creator>
      <pubDate>Wed, 17 Jun 2020 18:32:28 +0000</pubDate>
      <link>https://forem.com/hmadhsan/generate-release-apk-app-release-apk-in-react-native-for-android-2022</link>
      <guid>https://forem.com/hmadhsan/generate-release-apk-app-release-apk-in-react-native-for-android-2022</guid>
      <description>&lt;p&gt;Here I'm writing some very simple and easy steps to generate release APK for android that is also used to upload and publish to play store.&lt;/p&gt;

&lt;h1&gt;
  
  
  Step One
&lt;/h1&gt;

&lt;p&gt;First of all you have to generate your store key file. So, go to your &lt;br&gt;
&lt;strong&gt;C:\Program Files\Java\jdk1.8.0_251\bin&lt;/strong&gt;&lt;br&gt;
folder and open command prompt (Open as an administrator that is a best practice) and paste this below line&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;keytool -genkey -v -keystore your_key_name.keystore -alias your_key_alias -keyalg RSA -keysize 2048 -validity 10000&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now you will be asked some simple queries like password, your organizational name etc. Give them an answer. After completing this process you will see your generated store key file at your&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;C:\Program Files\Java\jdk1.8.0_251\bin&lt;/strong&gt;&lt;br&gt;
folder.&lt;/p&gt;

&lt;h1&gt;
  
  
  Step Two
&lt;/h1&gt;

&lt;p&gt;Now come to your &lt;strong&gt;android/gradle.properties&lt;/strong&gt; and setup your gradle variables&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MYAPP_RELEASE_STORE_FILE=your_keystor_ename.keystore&lt;br&gt;
MYAPP_RELEASE_KEY_ALIAS=your_keyalias&lt;br&gt;
MYAPP_RELEASE_STORE_PASSWORD=your_pass&lt;br&gt;
MYAPP_RELEASE_KEY_PASSWORD=your_pass&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Step Three
&lt;/h1&gt;

&lt;p&gt;Now you have to come in your &lt;strong&gt;andoid/app/build.gradle&lt;/strong&gt; and setup your signingconfig&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;android {&lt;br&gt;
signingConfigs {&lt;br&gt;
release {&lt;br&gt;
storeFile file(MYAPP_RELEASE_STORE_FILE)&lt;br&gt;
storePassword MYAPP_RELEASE_STORE_PASSWORD&lt;br&gt;
keyAlias MYAPP_RELEASE_KEY_ALIAS&lt;br&gt;
keyPassword MYAPP_RELEASE_KEY_PASSWORD&lt;br&gt;
}&lt;br&gt;
}&lt;br&gt;
buildTypes {&lt;br&gt;
release {&lt;br&gt;
signingConfig signingConfigs.release&lt;br&gt;
}&lt;br&gt;
}&lt;br&gt;
}&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now you are all done. Go to your android folder and generate release apk by this command&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;gradlew assembleRelease&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let me know if you get any sort of error! I will be glad to helping you out! Thanks&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>releaseapk</category>
      <category>react</category>
      <category>android</category>
    </item>
    <item>
      <title>Html Webpack Plugin: Error: Child compilation failed: (in Reactjs)</title>
      <dc:creator>Hammad Hassan</dc:creator>
      <pubDate>Tue, 03 Dec 2019 17:53:56 +0000</pubDate>
      <link>https://forem.com/hmadhsan/html-webpack-plugin-error-child-compilation-failed-in-reactjs-27mg</link>
      <guid>https://forem.com/hmadhsan/html-webpack-plugin-error-child-compilation-failed-in-reactjs-27mg</guid>
      <description>&lt;p&gt;So yesterday, I was building some application in react and initially my application was just working fine but when I installed material UI framework with its npm command, &lt;code&gt;npm install @material-ui/core&lt;/code&gt;, I got the error &lt;code&gt;Html Webpack Plugin: Error: Child compilation failed:&lt;/code&gt; with so many other errors were showing. &lt;/p&gt;

&lt;p&gt;I started to google this error and got just a few posts about it and no solution helped me. I also posted my question on StackOverflow (&lt;a href="https://stackoverflow.com/questions/59144633/i-am-getting-an-error-of-html-webpack-plugin-in-reactjs/59145436#59145436"&gt;https://stackoverflow.com/questions/59144633/i-am-getting-an-error-of-html-webpack-plugin-in-reactjs/59145436#59145436&lt;/a&gt;) and someone suggested to update core-js-compat npm package. &lt;/p&gt;

&lt;p&gt;Before implementing that suggestion I found out my Node.js version is 12.13.0 and version 12.13.1 is already released. So, I just updated my Node.js and my application is now working just fine and this error has been removed.&lt;/p&gt;

&lt;p&gt;So, If you ever get this error while building your react application you should check your Node version and update it to its latest version. Thank You&lt;/p&gt;

</description>
      <category>react</category>
      <category>webpack</category>
      <category>javascript</category>
      <category>html</category>
    </item>
  </channel>
</rss>
