Year: 2021

  • Database Seeding in Laravel 8 With Faker

    Database Seeding in Laravel 8 With Faker

    Hello to all, welcome to therichpost.com. In this post, I will do, Database Seeding in Laravel 8 With Faker.

    In this post, I will tell you, How to work with Database Seeding in Laravel 8. With Faker Package, which creates fake data for us. Like I always tell, Laravel has many unique features, which makes our coding easy and faster but for this we have to learn laravel well. Mostly we use laravel Model Factories and faker to create fake data. I personally like this Laravel feature very much.

    Here is database table users before done seeder:

    Database seeder
    Laravel Database seeder

    Here is the complete and easy process for Database Seeding in Laravel 8 With Faker:

    1. Like others, we don’t  need to install Laravel Faker Package because it is already installed, here you can see in composer.json file:

    Laravel gives us default:

    laravel Faker

    2. Second, we just need to run below code into database\seeders\DatabaseSeeder.php file:

    In this file, we call laravel insert query to create fake data:

    <?php
    
    use Illuminate\Database\Seeder;
    use Illuminate\Support\Facades\DB;
    
    use Faker\Factory as Faker;
    
    class DatabaseSeeder extends Seeder
    {
        /**
         * Seed the application's database.
         *
         * @return void
         */
        public function run()
        {
            $faker = Faker::create();
            foreach (range(1,10) as $index) {
              DB::table('users')->insert([
                  'name' => $faker->name,
                  'email' => $faker->email,
                  'password' => bcrypt('123456'),
              ]);
      }
        }
    }
    ?>
    3. In the end, we need to run below command in terminal:

    This command will seed database with fake data:

    php artisan db:seed

     

    After run above command, you can your database table Users with new data:

    Database Seeding in Laravel 8 With Faker
    Database Seeding in Laravel 8 With Faker Package

    Now we are done friends and please run your Laravel 8 project and see the Fake Data.  Also and If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements. I will come with more Laravel 8 demos in my coming posts.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Laravel 8 Login & Registration Forms inside Bootstrap Modal

    Laravel 8 Login & Registration Forms inside Bootstrap Modal

    Hello friends, welcome back to my blog. Today in this blog post, I am going to tell you, Laravel 8 Login & Registration Forms inside Bootstrap Modal.

    Laravel 8 User Login
    Laravel 8 Login & Registration Forms inside Bootstrap Modal
    Laravel Register Form

    Guys if you are new in Laravel8 the please check below link for Laravel basics information:

    Laravel Basics Tutorial for beginners


    Here is the code snippet for Laravel 8 Login & Registration Forms inside Bootstrap Modal and please use carefully and avoid the mistakes.:

    1. Friends here is the code below and you can add into your resources/views/ welcome.blade.php file:

    Guys for demo purpose, I have used this code into my welcome blade and I have used Direct CDN to make working example.

    ...
        <head>
           ...
           
            <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
            <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
           
            <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
                  
      
      <style>
     @import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
    .seminor-login-modal-body .close{
      position: relative;
      top: -45px;
      left: 10px;
     color: #1cd8ad;
     }
     .seminor-login-modal-body .close{
         opacity:0.75;
     }
     
     .seminor-login-modal-body .close:focus, .seminor-login-modal-body .close:hover {
         color: #39e8b0;
      opacity: 1;
      text-decoration: none;
      outline:0;
     }
     
     .seminor-login-modal .modal-dialog .modal-content{
         border-radius:0px;
     }
     
     /* form animation */
     .seminor-login-form .form-group {
       position: relative;
       margin-bottom: 1.5em !important;
     }
     .seminor-login-form .form-control{
      border: 0px solid #ced4da !important;
      border-bottom:1px solid #adadad !important;
      border-radius:0 !important;
     }
     .seminor-login-form .form-control:focus, .seminor-login-form .form-control:active{
      outline:none !important;
      outline-width: 0;
      border-color: #adadad !important;
      box-shadow: 0 0 0 0.2rem transparent;
     }
     *:focus {
      outline: none;
     }
     .seminor-login-form{
      padding: 2em 0 0;
     }
     
     .form-control-placeholder {
     position: absolute;
     top: 0;
     padding: 7px 0 0 13px;
     transition: all 200ms;
     opacity: 0.5;
     border-top: 0px;
     border-left: 0;
     border-right: 0;
     }
     
     .form-control:focus + .form-control-placeholder,
     .form-control:valid + .form-control-placeholder {
     font-size: 75%;
     -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
     opacity: 1;
     }
     
     .container-checkbox input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
     }
     .checkmark-box {
      position: absolute;
      top: -5px;
      left: 0;
      height: 25px;
      width: 25px;
      background-color: #adadad;
     }
     .container-checkbox {
      display: block;
      position: relative;
      padding-left: 40px;
      margin-bottom: 20px;
      cursor: pointer;
      font-size: 14px;
      font-weight: bold;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      line-height: 1.1;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      color: #fff;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      display: block;
     }
     .container-checkbox .checkmark-box:after {
      left: 10px;
      top: 4px;
      width: 7px;
      height: 15px;
      border: solid white;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
     }
     .checkmark:after, .checkmark-box:after {
      content: "";
      position: absolute;
      display: none;
     }
     .container-checkbox input:checked ~ .checkmark-box {
      background-color: #f58220;
      border: 0px solid transparent;
     }
     .btn-check-log .btn-check-login {
      font-size: 16px;
      padding: 10px 0;
     }
     button.btn-check-login:hover {
         color: #fff;
         background-color: #f58220;
         border: 2px solid #f58220;
     }
     .btn-check-login {
      color: #f58220;
      background-color: transparent;
      border: 2px solid #f58220;
      transition: all ease-in-out .3s;
     }
     .btn-check-login {
      display: inline-block;
      padding: 12px 0;
      margin-bottom: 0;
      line-height: 1.42857143;
      text-align: center;
      white-space: nowrap;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background-image: none;
      border-radius: 0;
      width: 100%;
     }
     .forgot-pass-fau a {
         text-decoration: none !important;
         font-size: 14px;
     }
     .text-primary-fau {
         color: #1959a2;
     }
     
     .select-form-control-placeholder{
       font-size: 100%;
         padding: 7px 0 0 13px;
         margin: 0;
     }
     
    .modal
    {
      overflow-y: scroll;
    }
      </style>
                    
        </head>
        <body>
           
       <div class="container">
        <h2>Modal login Form</h2>
        <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-login">
          Open modal
        </button>
      
      <br/>
      <br/>
      
      <h2>Modal Registration Form</h2>
      <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-reg">
        Open modal
      </button>
      
      
      <!-- The Modal Register -->
      <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-reg">
        <div class="modal-dialog modal-dialog-centered">
          <div class="modal-content">
      
            <!-- Modal body -->
            <div class="modal-body seminor-login-modal-body">
             <h5 class="modal-title text-center">CREATE AN ACCOUNT</h5>
              <button type="button" class="close" data-dismiss="modal">
                  <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
              </button>
      
      
        <form class="seminor-login-form">
          <div class="form-group">
            <input type="name" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">User Name</label>
          </div>
          <div class="form-group">
            <input type="email" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Email address</label>
          </div>
          <div class="form-group">
          <label class="select-form-control-placeholder" for="sel1">profession</label>
           <select class="form-control" id="sel1" name="sellist1">
             <option>Select profession</option>
             <option>Students</option>
             <option>Research Scholar</option>
             <option>Professor</option>
             <option>Others</option>
           </select>
          </div>
          <div class="form-group">
            <input type="tel" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Phone Number</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Organization</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Designation</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">City</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Password</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Confirm Password</label>
          </div>
      
          <div class="form-group forgot-pass-fau text-center ">
                                          <a href="#" class="text-secondary">
                                              By Clicking "SIGN UP" you accept our<br>
                                              <span class="text-primary-fau">Terms and Conditions</span>
                                          </a>
                                      </div>
      
            <div class="btn-check-log">
                <button type="submit" class="btn-check-login">SIGN UP</button>
            </div>
            <div class="create-new-fau text-center pt-3">
            <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-login" data-dismiss="modal">Already Have An Account</span></a>
            </div>
          </form>
      
            </div>
          </div>
        </div>
      </div>
      
      
      
      
        <!-- The Modal Login -->
        <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-login">
          <div class="modal-dialog modal-dialog-centered">
            <div class="modal-content">
      
              <!-- Modal body -->
              <div class="modal-body seminor-login-modal-body">
               <h5 class="modal-title text-center">LOGIN TO MY ACCOUNT</h5>
                <button type="button" class="close" data-dismiss="modal">
                    <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
                </button>
      
      
          <form class="seminor-login-form">
            <div class="form-group">
              <input type="email" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="name">Email address</label>
            </div>
            <div class="form-group">
              <input type="password" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="password">Password</label>
            </div>
            <div class="form-group">
              <label class="container-checkbox">
              Remember Me On This Computer
              <input type="checkbox" checked="checked" required>
              <span class="checkmark-box"></span>
              </label>
              </div>
      
              <div class="btn-check-log">
                  <button type="submit" class="btn-check-login">LOGIN</button>
              </div>
      
      
             <div class="forgot-pass-fau text-center pt-3">
                                       <a href="#" class="text-secondary">Forgot Your Password?</a>
      
                                     </div>
                                     <div class="create-new-fau text-center pt-3">
                                         <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-reg" data-dismiss="modal">Create A New Account</span></a>
                                     </div>
      
      
      
            </form>
      
              </div>
            </div>
          </div>
        </div>
      
      </div>
            
        </body>
    </html>

     


    Now we are done friends and please run your Laravel 8 project and see the Login Register Form.  Also and If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements. I will come with more Laravel 8 demos in my coming posts.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Vue 3 Login & Registration Forms inside Bootstrap Modal

    Vue 3 Login & Registration Forms inside Bootstrap Modal

    Hello my friends, welcome back to my blog. Today in this blog post, I am going to show you, Vue 3 Login & Registration Forms inside Bootstrap Modal.

    Vue Register Form
    Vue Register Form
    Vue 3 Login & Registration Forms inside Bootstrap Modal
    Vue Login Form
    Vue 3 Tutorials

    Vue 3 came and if you are new then you must check below link:
    Vuejs


    Friends now I proceed onwards and here is the working code snippet for Vue 3 Login & Registration Forms inside Bootstrap Modal and please use this carefully to avoid the mistakes:

    1. Firstly friends we need fresh vuejs(Vue 3) setup and for that we need to run below commands into our terminal and also w should have latest node version installed on our system:

    Guys you can skip this first step if you already have vuejs fresh setup:

    npm install -g @vue/cli
    
    vue create vuepage
    
    cd vuepage
    
    npm install bootstrap --save
    npm install jquery --save
    npm run serve //http://localhost:8080/

     

    2. Now friends please create new file “App.css” inside src folder and add below code inside it:

    @import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
    .seminor-login-modal-body .close{
      position: relative;
      top: -45px;
      left: 10px;
     color: #1cd8ad;
     }
     .seminor-login-modal-body .close{
         opacity:0.75;
     }
     
     .seminor-login-modal-body .close:focus, .seminor-login-modal-body .close:hover {
         color: #39e8b0;
      opacity: 1;
      text-decoration: none;
      outline:0;
     }
     
     .seminor-login-modal .modal-dialog .modal-content{
         border-radius:0px;
     }
     
     /* form animation */
     .seminor-login-form .form-group {
       position: relative;
       margin-bottom: 1.5em !important;
     }
     .seminor-login-form .form-control{
      border: 0px solid #ced4da !important;
      border-bottom:1px solid #adadad !important;
      border-radius:0 !important;
     }
     .seminor-login-form .form-control:focus, .seminor-login-form .form-control:active{
      outline:none !important;
      outline-width: 0;
      border-color: #adadad !important;
      box-shadow: 0 0 0 0.2rem transparent;
     }
     *:focus {
      outline: none;
     }
     .seminor-login-form{
      padding: 2em 0 0;
     }
     
     .form-control-placeholder {
     position: absolute;
     top: 0;
     padding: 7px 0 0 13px;
     transition: all 200ms;
     opacity: 0.5;
     border-top: 0px;
     border-left: 0;
     border-right: 0;
     }
     
     .form-control:focus + .form-control-placeholder,
     .form-control:valid + .form-control-placeholder {
     font-size: 75%;
     -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
     opacity: 1;
     }
     
     .container-checkbox input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
     }
     .checkmark-box {
      position: absolute;
      top: -5px;
      left: 0;
      height: 25px;
      width: 25px;
      background-color: #adadad;
     }
     .container-checkbox {
      display: block;
      position: relative;
      padding-left: 40px;
      margin-bottom: 20px;
      cursor: pointer;
      font-size: 14px;
      font-weight: bold;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      line-height: 1.1;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      color: #fff;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      display: block;
     }
     .container-checkbox .checkmark-box:after {
      left: 10px;
      top: 4px;
      width: 7px;
      height: 15px;
      border: solid white;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
     }
     .checkmark:after, .checkmark-box:after {
      content: "";
      position: absolute;
      display: none;
     }
     .container-checkbox input:checked ~ .checkmark-box {
      background-color: #f58220;
      border: 0px solid transparent;
     }
     .btn-check-log .btn-check-login {
      font-size: 16px;
      padding: 10px 0;
     }
     button.btn-check-login:hover {
         color: #fff;
         background-color: #f58220;
         border: 2px solid #f58220;
     }
     .btn-check-login {
      color: #f58220;
      background-color: transparent;
      border: 2px solid #f58220;
      transition: all ease-in-out .3s;
     }
     .btn-check-login {
      display: inline-block;
      padding: 12px 0;
      margin-bottom: 0;
      line-height: 1.42857143;
      text-align: center;
      white-space: nowrap;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background-image: none;
      border-radius: 0;
      width: 100%;
     }
     .forgot-pass-fau a {
         text-decoration: none !important;
         font-size: 14px;
     }
     .text-primary-fau {
         color: #1959a2;
     }
     
     .select-form-control-placeholder{
       font-size: 100%;
         padding: 7px 0 0 13px;
         margin: 0;
     }
     
    .modal
    {
      overflow-y: scroll!important;
    }

     

    3. Finally friends we need to add below code into our src/App.vue file to get final output on web browser:

    <template>
     
    <div class="container">
        <h2>Modal login Form</h2>
        <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-login">
          Open modal
        </button>
      
      <br/>
      <br/>
      
      <h2>Modal Registration Form</h2>
      <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-reg">
        Open modal
      </button>
      
      
      <!-- The Modal Register -->
      <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-reg">
        <div class="modal-dialog modal-dialog-centered">
          <div class="modal-content">
      
            <!-- Modal body -->
            <div class="modal-body seminor-login-modal-body">
             <h5 class="modal-title text-center">CREATE AN ACCOUNT</h5>
              <button type="button" class="close" data-dismiss="modal">
                  <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
              </button>
      
      
        <form class="seminor-login-form">
          <div class="form-group">
            <input type="name" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">User Name</label>
          </div>
          <div class="form-group">
            <input type="email" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Email address</label>
          </div>
          <div class="form-group">
          <label class="select-form-control-placeholder" for="sel1">profession</label>
           <select class="form-control" id="sel1" name="sellist1">
             <option>Select profession</option>
             <option>Students</option>
             <option>Research Scholar</option>
             <option>Professor</option>
             <option>Others</option>
           </select>
          </div>
          <div class="form-group">
            <input type="tel" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Phone Number</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Organization</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Designation</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">City</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Password</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Confirm Password</label>
          </div>
      
          <div class="form-group forgot-pass-fau text-center ">
                                          <a href="#" class="text-secondary">
                                              By Clicking "SIGN UP" you accept our<br>
                                              <span class="text-primary-fau">Terms and Conditions</span>
                                          </a>
                                      </div>
      
            <div class="btn-check-log">
                <button type="submit" class="btn-check-login">SIGN UP</button>
            </div>
            <div class="create-new-fau text-center pt-3">
            <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-login" data-dismiss="modal">Already Have An Account</span></a>
            </div>
          </form>
      
            </div>
          </div>
        </div>
      </div>
      
      
      
      
        <!-- The Modal Login -->
        <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-login">
          <div class="modal-dialog modal-dialog-centered">
            <div class="modal-content">
      
              <!-- Modal body -->
              <div class="modal-body seminor-login-modal-body">
               <h5 class="modal-title text-center">LOGIN TO MY ACCOUNT</h5>
                <button type="button" class="close" data-dismiss="modal">
                    <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
                </button>
      
      
          <form class="seminor-login-form">
            <div class="form-group">
              <input type="email" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="name">Email address</label>
            </div>
            <div class="form-group">
              <input type="password" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="password">Password</label>
            </div>
            <div class="form-group">
              <label class="container-checkbox">
              Remember Me On This Computer
              <input type="checkbox" checked="checked" required>
              <span class="checkmark-box"></span>
              </label>
              </div>
      
              <div class="btn-check-log">
                  <button type="submit" class="btn-check-login">LOGIN</button>
              </div>
      
      
             <div class="forgot-pass-fau text-center pt-3">
                                       <a href="#" class="text-secondary">Forgot Your Password?</a>
      
                                     </div>
                                     <div class="create-new-fau text-center pt-3">
                                         <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-reg" data-dismiss="modal">Create A New Account</span></a>
                                     </div>
      
      
      
            </form>
      
              </div>
            </div>
          </div>
        </div>
      
      </div>
      
    </template>
    <script>
    //Bootstrap
    import './App.css'; 
    import 'bootstrap/dist/css/bootstrap.min.css';
    import 'bootstrap/dist/js/bootstrap.min.js';
    export default {
     //
      
    }
    </script>

     

    Now we are done friends also and If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements. For better understanding must watch video above.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Reactjs Login & Registration Forms inside Bootstrap Modal

    Reactjs Login & Registration Forms inside Bootstrap Modal

    Hello friends, welcome back to my blog. Today in this blog post, I am going to show you, Reactjs Login & Registration Forms inside Bootstrap Modal.

    In this, we will done:

    1. Animated Login and register forms inside bootstrap modal popup.
    2. Forms input fields placeholder animation.
    3. Prevent Bootstrap Modal from disappearing when clicking outside.

    Reactjs Login & Registration Forms inside Bootstrap Modal
    Reactjs User Login
    Reactjs User Register

    For reactjs new comers, please check the below link:

    Reactjs Basic Tutorials


    Friends now I proceed onwards and here is the working code snippet for Reactjs Login & Registration Forms inside Bootstrap Modal and please use this carefully to avoid the mistakes:

    1. Firstly, we need fresh reactjs setup and for that, we need to run below commands into out terminal and also we should have latest node version installed on our system:

    npx create-react-app reacttemplate
    
    cd reacttemplate
    
    npm start

    2. Now we need to run below commands into our project terminal to get bootstrap and related modules into our reactjs application:

    npm install bootstrap --save
    
    npm install jquery --save
    
    npm start //For start project again

    3. Finally for the main output, we need to add below code into our reacttemplate/src/App.js file or if you have fresh setup then you can replace reacttemplate/src/App.js file code with below code:

    import React from "react";
    
    import './App.css'
    import 'bootstrap/dist/css/bootstrap.min.css';
    import 'bootstrap/dist/js/bootstrap.min.js';
    
    
    class App extends React.Component {
     
      render() {
        return (
          <div className="main_container">
           
           <div class="container">
              <h2>Modal login Form</h2>
              <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-login">
                Open modal
              </button>
            
            <br/>
            <br/>
            
            <h2>Modal Registration Form</h2>
            <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-reg">
              Open modal
            </button>
            
            
           
            <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-reg">
              <div class="modal-dialog modal-dialog-centered">
                <div class="modal-content">
            
                  
                  <div class="modal-body seminor-login-modal-body">
                  <h5 class="modal-title text-center">CREATE AN ACCOUNT</h5>
                    <button type="button" class="close" data-dismiss="modal">
                        <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
                    </button>
            
            
                    <form class="seminor-login-form">
                      <div class="form-group">
                        <input type="name" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">User Name</label>
                      </div>
                      <div class="form-group">
                        <input type="email" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">Email address</label>
                      </div>
                      <div class="form-group">
                      <label class="select-form-control-placeholder" for="sel1">profession</label>
                      <select class="form-control" id="sel1" name="sellist1">
                        <option>Select profession</option>
                        <option>Students</option>
                        <option>Research Scholar</option>
                        <option>Professor</option>
                        <option>Others</option>
                      </select>
                      </div>
                      <div class="form-group">
                        <input type="tel" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">Phone Number</label>
                      </div>
                      <div class="form-group">
                        <input type="text" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">Organization</label>
                      </div>
                      <div class="form-group">
                        <input type="text" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">Designation</label>
                      </div>
                      <div class="form-group">
                        <input type="text" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="name">City</label>
                      </div>
                      <div class="form-group">
                        <input type="password" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="password">Password</label>
                      </div>
                      <div class="form-group">
                        <input type="password" class="form-control" required autocomplete="off" />
                        <label class="form-control-placeholder" for="password">Confirm Password</label>
                      </div>
                  
                      <div class="form-group forgot-pass-fau text-center ">
                                                      <a href="#" class="text-secondary">
                                                          By Clicking "SIGN UP" you accept our<br />
                                                          <span class="text-primary-fau">Terms and Conditions</span>
                                                      </a>
                                                  </div>
                  
                        <div class="btn-check-log">
                            <button type="submit" class="btn-check-login">SIGN UP</button>
                        </div>
                        <div class="create-new-fau text-center pt-3">
                        <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-login" data-dismiss="modal">Already Have An Account</span></a>
                        </div>
                      </form>
            
                  </div>
                </div>
              </div>
            </div>
            
            
            
            
             
              <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-login">
                <div class="modal-dialog modal-dialog-centered">
                  <div class="modal-content">
            
                  
                    <div class="modal-body seminor-login-modal-body">
                    <h5 class="modal-title text-center">LOGIN TO MY ACCOUNT</h5>
                      <button type="button" class="close" data-dismiss="modal">
                          <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
                      </button>
            
            
                <form class="seminor-login-form">
                  <div class="form-group">
                    <input type="email" class="form-control" required autocomplete="off" />
                    <label class="form-control-placeholder" for="name">Email address</label>
                  </div>
                  <div class="form-group">
                    <input type="password" class="form-control" required autocomplete="off" />
                    <label class="form-control-placeholder" for="password">Password</label>
                  </div>
                  <div class="form-group">
                    <label class="container-checkbox">
                    Remember Me On This Computer
                    <input type="checkbox" checked="checked" required />
                    <span class="checkmark-box"></span>
                    </label>
                    </div>
            
                    <div class="btn-check-log">
                        <button type="submit" class="btn-check-login">LOGIN</button>
                    </div>
            
            
                  <div class="forgot-pass-fau text-center pt-3">
                                            <a href="#" class="text-secondary">Forgot Your Password?</a>
            
                                          </div>
                                          <div class="create-new-fau text-center pt-3">
                                              <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-reg" data-dismiss="modal">Create A New Account</span></a>
                                          </div>
            
            
            
                  </form>
            
                    </div>
                  </div>
                </div>
              </div>
            
            </div>
         
          </div>
        );
      }
    }
    export default App;

    4. Now friends, we need to below code into our reacttemplate/src/App.css file for some custom styling:

    @import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
    .seminor-login-modal-body .close{
      position: relative;
      top: -45px;
      left: 10px;
     color: #1cd8ad;
     }
     .seminor-login-modal-body .close{
         opacity:0.75;
     }
     
     .seminor-login-modal-body .close:focus, .seminor-login-modal-body .close:hover {
         color: #39e8b0;
      opacity: 1;
      text-decoration: none;
      outline:0;
     }
     
     .seminor-login-modal .modal-dialog .modal-content{
         border-radius:0px;
     }
     
     /* form animation */
     .seminor-login-form .form-group {
       position: relative;
       margin-bottom: 1.5em !important;
     }
     .seminor-login-form .form-control{
      border: 0px solid #ced4da !important;
      border-bottom:1px solid #adadad !important;
      border-radius:0 !important;
     }
     .seminor-login-form .form-control:focus, .seminor-login-form .form-control:active{
      outline:none !important;
      outline-width: 0;
      border-color: #adadad !important;
      box-shadow: 0 0 0 0.2rem transparent;
     }
     *:focus {
      outline: none;
     }
     .seminor-login-form{
      padding: 2em 0 0;
     }
     
     .form-control-placeholder {
     position: absolute;
     top: 0;
     padding: 7px 0 0 13px;
     transition: all 200ms;
     opacity: 0.5;
     border-top: 0px;
     border-left: 0;
     border-right: 0;
     }
     
     .form-control:focus + .form-control-placeholder,
     .form-control:valid + .form-control-placeholder {
     font-size: 75%;
     -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
     opacity: 1;
     }
     
     .container-checkbox input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
     }
     .checkmark-box {
      position: absolute;
      top: -5px;
      left: 0;
      height: 25px;
      width: 25px;
      background-color: #adadad;
     }
     .container-checkbox {
      display: block;
      position: relative;
      padding-left: 40px;
      margin-bottom: 20px;
      cursor: pointer;
      font-size: 14px;
      font-weight: bold;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      line-height: 1.1;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      color: #fff;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      display: block;
     }
     .container-checkbox .checkmark-box:after {
      left: 10px;
      top: 4px;
      width: 7px;
      height: 15px;
      border: solid white;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
     }
     .checkmark:after, .checkmark-box:after {
      content: "";
      position: absolute;
      display: none;
     }
     .container-checkbox input:checked ~ .checkmark-box {
      background-color: #f58220;
      border: 0px solid transparent;
     }
     .btn-check-log .btn-check-login {
      font-size: 16px;
      padding: 10px 0;
     }
     button.btn-check-login:hover {
         color: #fff;
         background-color: #f58220;
         border: 2px solid #f58220;
     }
     .btn-check-login {
      color: #f58220;
      background-color: transparent;
      border: 2px solid #f58220;
      transition: all ease-in-out .3s;
     }
     .btn-check-login {
      display: inline-block;
      padding: 12px 0;
      margin-bottom: 0;
      line-height: 1.42857143;
      text-align: center;
      white-space: nowrap;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background-image: none;
      border-radius: 0;
      width: 100%;
     }
     .forgot-pass-fau a {
         text-decoration: none !important;
         font-size: 14px;
     }
     .text-primary-fau {
         color: #1959a2;
     }
     
     .select-form-control-placeholder{
       font-size: 100%;
         padding: 7px 0 0 13px;
         margin: 0;
     }
     
    .modal
    {
      overflow-y: scroll;
    }

    Now we are done friends. If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Angular 11 Login & Registration Forms inside Bootstrap Modal

    Angular 11 Login & Registration Forms inside Bootstrap Modal

    Hello friends, welcome back to my blog. Today in this blog post, I am going to tell you, Angular 11 Login & Registration Forms inside Bootstrap Modal.

    In this, we will done:

    • Animated Login and register forms inside bootstrap modal popup.
    • Forms input fields placeholder animation.
    • Prevent Bootstrap Modal from disappearing when clicking outside.

    Angular11 Forms
    Angular 11 User Registration Form Inside Modal Popup
    Registration Form
    Angular 11 Login & Registration Forms inside Bootstrap Modal
    Login Form

    Angular 11 came and if you are new then you must check below two links:

    1. Angular11 Basic Tutorials

    Friends now I proceed onwards and here is the working code snippet for Angular 11 Login & Registration Forms inside Bootstrap Modal and please use carefully this to avoid the mistakes:

    1. Firstly friends we need fresh angular 11 setup and for this we need to run below commands but if you already have angular 11 setup then you can avoid below commands. Secondly we should also have latest node version installed on our system:

    npm install -g @angular/cli 
    
    ng new angularbootstrap //Create new Angular Project
    
    cd angularbootstrap // Go inside the Angular Project Folder
    
    ng serve --open // Run and Open the Angular Project
    
    http://localhost:4200/ // Working Angular Project Url

     

    2. Now friends, here we need to run below commands into our project terminal to install bootstrap and jquery modules into our angular application:

    npm install --save bootstrap
    
    npm i jquery --save

     

    3. Now friends, here we need to add below  into our angular.json file:

    ...
     "styles": [
                  ...
                  "node_modules/bootstrap/dist/css/bootstrap.min.css"
                 
                  
                ],
                "scripts": [
                  "node_modules/jquery/dist/jquery.min.js",
                  "node_modules/bootstrap/dist/js/bootstrap.min.js"
                ]
    ...

     

    4. Now friends we just need to add below code into src/app/app.component.html file to get final out on the web browser:

    <div class="container">
        <h2>Modal login Form</h2>
        <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-login">
          Open modal
        </button>
      
      <br/>
      <br/>
      
      <h2>Modal Registration Form</h2>
      <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#sem-reg">
        Open modal
      </button>
      
      
      <!-- The Modal Register -->
      <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-reg">
        <div class="modal-dialog modal-dialog-centered">
          <div class="modal-content">
      
            <!-- Modal body -->
            <div class="modal-body seminor-login-modal-body">
             <h5 class="modal-title text-center">CREATE AN ACCOUNT</h5>
              <button type="button" class="close" data-dismiss="modal">
                  <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
              </button>
      
      
        <form class="seminor-login-form">
          <div class="form-group">
            <input type="name" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">User Name</label>
          </div>
          <div class="form-group">
            <input type="email" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Email address</label>
          </div>
          <div class="form-group">
          <label class="select-form-control-placeholder" for="sel1">profession</label>
           <select class="form-control" id="sel1" name="sellist1">
             <option>Select profession</option>
             <option>Students</option>
             <option>Research Scholar</option>
             <option>Professor</option>
             <option>Others</option>
           </select>
          </div>
          <div class="form-group">
            <input type="tel" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Phone Number</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Organization</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">Designation</label>
          </div>
          <div class="form-group">
            <input type="text" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="name">City</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Password</label>
          </div>
          <div class="form-group">
            <input type="password" class="form-control" required autocomplete="off">
            <label class="form-control-placeholder" for="password">Confirm Password</label>
          </div>
      
          <div class="form-group forgot-pass-fau text-center ">
                                          <a href="#" class="text-secondary">
                                              By Clicking "SIGN UP" you accept our<br>
                                              <span class="text-primary-fau">Terms and Conditions</span>
                                          </a>
                                      </div>
      
            <div class="btn-check-log">
                <button type="submit" class="btn-check-login">SIGN UP</button>
            </div>
            <div class="create-new-fau text-center pt-3">
            <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-login" data-dismiss="modal">Already Have An Account</span></a>
            </div>
          </form>
      
            </div>
          </div>
        </div>
      </div>
      
      
      
      
        <!-- The Modal Login -->
        <div class="modal fade seminor-login-modal" data-backdrop="static" id="sem-login">
          <div class="modal-dialog modal-dialog-centered">
            <div class="modal-content">
      
              <!-- Modal body -->
              <div class="modal-body seminor-login-modal-body">
               <h5 class="modal-title text-center">LOGIN TO MY ACCOUNT</h5>
                <button type="button" class="close" data-dismiss="modal">
                    <span><i class="fa fa-times-circle" aria-hidden="true"></i></span>
                </button>
      
      
          <form class="seminor-login-form">
            <div class="form-group">
              <input type="email" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="name">Email address</label>
            </div>
            <div class="form-group">
              <input type="password" class="form-control" required autocomplete="off">
              <label class="form-control-placeholder" for="password">Password</label>
            </div>
            <div class="form-group">
              <label class="container-checkbox">
              Remember Me On This Computer
              <input type="checkbox" checked="checked" required>
              <span class="checkmark-box"></span>
              </label>
              </div>
      
              <div class="btn-check-log">
                  <button type="submit" class="btn-check-login">LOGIN</button>
              </div>
      
      
             <div class="forgot-pass-fau text-center pt-3">
                                       <a href="#" class="text-secondary">Forgot Your Password?</a>
      
                                     </div>
                                     <div class="create-new-fau text-center pt-3">
                                         <a href="#" class="text-primary-fau"><span data-toggle="modal" data-target="#sem-reg" data-dismiss="modal">Create A New Account</span></a>
                                     </div>
      
      
      
            </form>
      
              </div>
            </div>
          </div>
        </div>
      
      </div>

     

    5. Now friends we just need to css code code into src/app/app.component.css file:

    @import url('https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
    .seminor-login-modal-body .close{
      position: relative;
      top: -45px;
      left: 10px;
     color: #1cd8ad;
     }
     .seminor-login-modal-body .close{
         opacity:0.75;
     }
     
     .seminor-login-modal-body .close:focus, .seminor-login-modal-body .close:hover {
         color: #39e8b0;
      opacity: 1;
      text-decoration: none;
      outline:0;
     }
     
     .seminor-login-modal .modal-dialog .modal-content{
         border-radius:0px;
     }
     
     /* form animation */
     .seminor-login-form .form-group {
       position: relative;
       margin-bottom: 1.5em !important;
     }
     .seminor-login-form .form-control{
      border: 0px solid #ced4da !important;
      border-bottom:1px solid #adadad !important;
      border-radius:0 !important;
     }
     .seminor-login-form .form-control:focus, .seminor-login-form .form-control:active{
      outline:none !important;
      outline-width: 0;
      border-color: #adadad !important;
      box-shadow: 0 0 0 0.2rem transparent;
     }
     *:focus {
      outline: none;
     }
     .seminor-login-form{
      padding: 2em 0 0;
     }
     
     .form-control-placeholder {
     position: absolute;
     top: 0;
     padding: 7px 0 0 13px;
     transition: all 200ms;
     opacity: 0.5;
     border-top: 0px;
     border-left: 0;
     border-right: 0;
     }
     
     .form-control:focus + .form-control-placeholder,
     .form-control:valid + .form-control-placeholder {
     font-size: 75%;
     -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
     opacity: 1;
     }
     
     .container-checkbox input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
     }
     .checkmark-box {
      position: absolute;
      top: -5px;
      left: 0;
      height: 25px;
      width: 25px;
      background-color: #adadad;
     }
     .container-checkbox {
      display: block;
      position: relative;
      padding-left: 40px;
      margin-bottom: 20px;
      cursor: pointer;
      font-size: 14px;
      font-weight: bold;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      line-height: 1.1;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      color: #fff;
     }
     .container-checkbox input:checked ~ .checkmark-box:after {
      display: block;
     }
     .container-checkbox .checkmark-box:after {
      left: 10px;
      top: 4px;
      width: 7px;
      height: 15px;
      border: solid white;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
     }
     .checkmark:after, .checkmark-box:after {
      content: "";
      position: absolute;
      display: none;
     }
     .container-checkbox input:checked ~ .checkmark-box {
      background-color: #f58220;
      border: 0px solid transparent;
     }
     .btn-check-log .btn-check-login {
      font-size: 16px;
      padding: 10px 0;
     }
     button.btn-check-login:hover {
         color: #fff;
         background-color: #f58220;
         border: 2px solid #f58220;
     }
     .btn-check-login {
      color: #f58220;
      background-color: transparent;
      border: 2px solid #f58220;
      transition: all ease-in-out .3s;
     }
     .btn-check-login {
      display: inline-block;
      padding: 12px 0;
      margin-bottom: 0;
      line-height: 1.42857143;
      text-align: center;
      white-space: nowrap;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background-image: none;
      border-radius: 0;
      width: 100%;
     }
     .forgot-pass-fau a {
         text-decoration: none !important;
         font-size: 14px;
     }
     .text-primary-fau {
         color: #1959a2;
     }
     
     .select-form-control-placeholder{
       font-size: 100%;
         padding: 7px 0 0 13px;
         margin: 0;
     }
     
    .modal
    {
      overflow-y: scroll;
    }

     

    Friends in the end must run ng serve command into your terminal to run the angular 11 project.

    Now we are done friends. If you have any kind of query, suggestion and new requirement then feel free to comment below.

    Note: Friends, In this post, I just tell the basic setup and things, you can change the code according to your requirements.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad because with your views, I will make my next posts more good and helpful.

    Jassa

    Thanks

  • Angular 11 Animated App Landing Page Template

    Angular 11 Animated App Landing Page Template

    Hello friends, welcome back to my blog. Today in this blog post, I am going to tell you, Angular 11 Animated App Landing Page Template.

    Angular 11 Animated App Landing Page Template
    Angular Bootstrap Landing Page

    Angular 11 came and if you are new then you must check below two links:

    1. Angular11 Basic Tutorials

    Friends now I proceed onwards and here is the working code snippet for Angular 11 Animated App Landing Page Template and please use carefully this to avoid the mistakes:

    1. Firstly friends we need fresh angular 11 setup and for this we need to run below commands but if you already have angular 11 setup then you can avoid below commands. Secondly we should also have latest node version installed on our system:

    npm install -g @angular/cli 
    
    ng new angularbootstrap //Create new Angular Project
    
    cd angularbootstrap // Go inside the Angular Project Folder
    
    ng serve --open // Run and Open the Angular Project
    
    http://localhost:4200/ // Working Angular Project Url

     

    2. Now friends, here we need to run below commands into our project terminal to install bootstrap and jquery modules into our angular application:

    npm install --save bootstrap

    3. Now friends, here we need to add below  into our angular.json file:

    ...
     "styles": [
                  ...
                  "node_modules/bootstrap/dist/css/bootstrap.min.css"
                 
                  
                ]
    ...

     

    4. Now friends we just need to add below code into src/app/app.component.html file to get final out on the web browser:

    <div class="space-medium">
        <div class="container">
            <div class="row">
                <div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-12">
                    <div class="feature-block-v7 feature-block">
                        <div class="feature-icon text-brand bg-brand-light mb-5">
                            <i class="fas fa-paint-roller"></i>
                        </div>
                        <div class="feature-content">
                            <h2>Build better apps</h2>
                            <p class="lead">Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. </p>
                            <hr class="m-t-30 m-b-30">
                            <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>
                            
                            <a href="#" class="btn btn-rounded btn-outline-primary">Get the app</a>
                        </div>
                    </div>
                </div>
                <div class="offset-xl-1 col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
                    <div class="circle-1"></div>
                    <div class="feature-app-img">
                        <img src="https://therichpost.com/wp-content/uploads/2021/04/iphone-img-2.png" alt="App Landing Page Template">
                    </div>
                </div>
            </div>
             <div class="row">
                    <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12 text-center mt-4"> 
              Created for <a href="#" target="_blank" class="text-primary">therichpost</a>
              </div></div>
        </div>
    </div>

     

    5. Now friends we just need to css code code into src/app/app.component.css file:

    @import url('https://use.fontawesome.com/releases/v5.7.2/css/all.css');
    body { font-family: 'Circular Std Book'; font-style: normal; font-weight: normal; font-size: 16px; line-height: 27px; color: #808294; -webkit-font-smoothing: antialiased; background: #f8f8fb; }
    .body-bg { background-color: #fbfbfc; }
    h1, h2, h3, h4, h5, h6 { color: #181825; margin: 0px 0px 15px 0px; font-family: 'Circular Std Book'; }
    h1 { font-size: 42px; line-height: 54px; letter-spacing: -1px; }
    h2 { font-size: 34px; line-height: 44px; letter-spacing: -1px; }
    h3 { font-size: 26px; line-height: 33px; letter-spacing: -1px; }
    h4 { font-size: 20px; line-height: 31px; }
    h5 { font-size: 16px; line-height: 21px; }
    h6 { font-size: 13px; line-height: 21px; }
    .h2 { font-size: 35px; line-height: 48px; letter-spacing: -1px; }
    .h3, h3 {
        font-size: 26px;
        line-height: 38px;
    }
    p { margin: 0px 0px 24px 0px; }
    p:last-child { margin: 0px; }
    a { color: #3544ee; }
    a:hover { color: #202db8; text-decoration: none; }
    a:active, a:hover { outline: 0; text-decoration: none; }
    a.text-primary:focus, a.text-primary:hover {
        color: #202db8!important;
    }
    .space-medium { padding-top: 50px; padding-bottom: 50px; }
    
    .btn { font-size: 16px; padding: 11px 21px; border-radius: 4px; overflow: hidden; display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); overflow: hidden; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: color, background-color; transition-property: color, background-color; transition: .3s ease; font-family: 'Circular Std Medium' !important; }
    .btn-outline-primary { color: #3544ee; background-color: transparent; border-color: #3544ee; }
    .btn-outline-primary:hover { color: #fff; background-color: #3544ee; border-color: #3544ee; }
    .btn-outline-primary.focus, .btn-outline-primary:focus { color: #fff; background-color: #3544ee; border-color: #3544ee; box-shadow: 0 0 0 1px rgb(53, 68, 238); }
    .btn-rounded { border-radius: 100px; }
    
    
    .feature-block-v7 { }
    .feature-block-v7.feature-block { margin-bottom: 30px; }
    .feature-block-v7 .feature-content { }
    .feature-block-v7 .feature-title { margin-bottom: 5px; font-size: 21px; }
    .feature-block-v7 .feature-text { }
    .feature-block-v7 .feature-icon { background-color: #e1e4fd; color: #3544ee; padding: 18px; font-size: 20px; display: block; text-align: center; width: 60px; height: 60px; margin-bottom: 30px; line-height: 1.5; border-radius: 100%; }
    .feature-app-img { position: relative; text-align: center; }
    .circle-1 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #3be1a4; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-1:hover { cursor: pointer; }
    .circle-1::after, .circle-1::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-1::after { background: rgb(59, 225, 164); }
    .circle-1::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-1::before { background: rgb(59, 225, 164); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    .circle-2 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #9c4efb; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-2:hover { cursor: pointer; }
    .circle-2::after, .circle-2::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #9c4efb; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-2::after { background: rgba(156, 78, 251, .5); }
    .circle-2::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-2::before { background: rgba(156, 78, 251, .5); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    .circle-3 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #fb8645; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-3:hover { cursor: pointer; }
    .circle-3::after, .circle-3::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #fb8645; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-3::after { background: rgba(251, 134, 69, .5); }
    .circle-3::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-3::before { background: rgba(251, 134, 69, .5); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    @-webkit-keyframes grow {
      0% { -webkit-transform: scale(1, 1); transform: scale(1, 1); opacity: 1; }
      100% { -webkit-transform: scale(1.8, 1.8); transform: scale(1.8, 1.8); opacity: 0; }
    }
    @keyframes grow {
      0% { -webkit-transform: scale(1, 1); transform: scale(1, 1); opacity: 1; }
      100% { -webkit-transform: scale(1.8, 1.8); transform: scale(1.8, 1.8); opacity: 0; }
    }

    Friends in the end must run ng serve command into your terminal to run the angular 11 project.

    Now we are done friends. If you have any kind of query, suggestion and new requirement then feel free to comment below.

    Note: Friends, In this post, I just tell the basic setup and things, you can change the code according to your requirements.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad because with your views, I will make my next posts more good and helpful.

    Jassa

    Thanks

  • Vue 3 Animated App Landing Page Template

    Vue 3 Animated App Landing Page Template

    Hello my friends, welcome back to my blog. Today in this blog post, I am going to show you, Vue 3 Animated App Landing Page Template.

    Vue 3 Animated App Landing Page Template
    Vue js Animated App Landing Page Template
    Vue 3 Tutorials

    Vue 3 came and if you are new then you must check below link:
    Vuejs


    Friends now I proceed onwards and here is the working code snippet for Vue 3 Animated App Landing Page Template and please use this carefully to avoid the mistakes:

    1. Firstly friends we need fresh vuejs(Vue 3) setup and for that we need to run below commands into our terminal and also w should have latest node version installed on our system:

    Guys you can skip this first step if you already have vuejs fresh setup:

    npm install -g @vue/cli
    
    vue create vuepage
    
    cd vuepage
    
    npm install bootstrap --save
    
    npm run serve //http://localhost:8080/

     

    2. Now friends please create new file “App.css” inside src folder and add below code inside it:

    @import url('https://use.fontawesome.com/releases/v5.7.2/css/all.css');
    body { font-family: 'Circular Std Book'; font-style: normal; font-weight: normal; font-size: 16px; line-height: 27px; color: #808294; -webkit-font-smoothing: antialiased; background: #f8f8fb; }
    .body-bg { background-color: #fbfbfc; }
    h1, h2, h3, h4, h5, h6 { color: #181825; margin: 0px 0px 15px 0px; font-family: 'Circular Std Book'; }
    h1 { font-size: 42px; line-height: 54px; letter-spacing: -1px; }
    h2 { font-size: 34px; line-height: 44px; letter-spacing: -1px; }
    h3 { font-size: 26px; line-height: 33px; letter-spacing: -1px; }
    h4 { font-size: 20px; line-height: 31px; }
    h5 { font-size: 16px; line-height: 21px; }
    h6 { font-size: 13px; line-height: 21px; }
    .h2 { font-size: 35px; line-height: 48px; letter-spacing: -1px; }
    .h3, h3 {
        font-size: 26px;
        line-height: 38px;
    }
    p { margin: 0px 0px 24px 0px; }
    p:last-child { margin: 0px; }
    a { color: #3544ee; }
    a:hover { color: #202db8; text-decoration: none; }
    a:active, a:hover { outline: 0; text-decoration: none; }
    a.text-primary:focus, a.text-primary:hover {
        color: #202db8!important;
    }
    .space-medium { padding-top: 50px; padding-bottom: 50px; }
    
    .btn { font-size: 16px; padding: 11px 21px; border-radius: 4px; overflow: hidden; display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); overflow: hidden; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: color, background-color; transition-property: color, background-color; transition: .3s ease; font-family: 'Circular Std Medium' !important; }
    .btn-outline-primary { color: #3544ee; background-color: transparent; border-color: #3544ee; }
    .btn-outline-primary:hover { color: #fff; background-color: #3544ee; border-color: #3544ee; }
    .btn-outline-primary.focus, .btn-outline-primary:focus { color: #fff; background-color: #3544ee; border-color: #3544ee; box-shadow: 0 0 0 1px rgb(53, 68, 238); }
    .btn-rounded { border-radius: 100px; }
    
    
    .feature-block-v7 { }
    .feature-block-v7.feature-block { margin-bottom: 30px; }
    .feature-block-v7 .feature-content { }
    .feature-block-v7 .feature-title { margin-bottom: 5px; font-size: 21px; }
    .feature-block-v7 .feature-text { }
    .feature-block-v7 .feature-icon { background-color: #e1e4fd; color: #3544ee; padding: 18px; font-size: 20px; display: block; text-align: center; width: 60px; height: 60px; margin-bottom: 30px; line-height: 1.5; border-radius: 100%; }
    .feature-app-img { position: relative; text-align: center; }
    .circle-1 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #3be1a4; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-1:hover { cursor: pointer; }
    .circle-1::after, .circle-1::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-1::after { background: rgb(59, 225, 164); }
    .circle-1::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-1::before { background: rgb(59, 225, 164); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    .circle-2 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #9c4efb; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-2:hover { cursor: pointer; }
    .circle-2::after, .circle-2::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #9c4efb; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-2::after { background: rgba(156, 78, 251, .5); }
    .circle-2::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-2::before { background: rgba(156, 78, 251, .5); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    .circle-3 { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 390px; height: 390px; background-color: #fb8645; color: white; text-align: center; line-height: 100px; border-radius: 50%; font-size: 1.3rem; }
    .circle-3:hover { cursor: pointer; }
    .circle-3::after, .circle-3::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #fb8645; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-3::after { background: rgba(251, 134, 69, .5); }
    .circle-3::after::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 390px; height: 390px; background: #3be1a4; border-radius: 50%; z-index: -1; -webkit-animation: grow 3s ease-in-out infinite; animation: grow 3s ease-in-out infinite; }
    .circle-3::before { background: rgba(251, 134, 69, .5); -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }
    @-webkit-keyframes grow {
      0% { -webkit-transform: scale(1, 1); transform: scale(1, 1); opacity: 1; }
      100% { -webkit-transform: scale(1.8, 1.8); transform: scale(1.8, 1.8); opacity: 0; }
    }
    @keyframes grow {
      0% { -webkit-transform: scale(1, 1); transform: scale(1, 1); opacity: 1; }
      100% { -webkit-transform: scale(1.8, 1.8); transform: scale(1.8, 1.8); opacity: 0; }
    }
    

     

    3. Finally friends we need to add below code into our src/App.vue file to get final output on web browser:

    <template>
    <div class="space-medium">
            <div class="container">
                <div class="row">
                    <div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-12">
                        <div class="feature-block-v7 feature-block">
                            <div class="feature-icon text-brand bg-brand-light mb-5">
                                <i class="fas fa-paint-roller"></i>
                            </div>
                            <div class="feature-content">
                                <h2>Build better apps</h2>
                                <p class="lead">Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. </p>
                                <hr class="m-t-30 m-b-30">
                                <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>
                                
                                <a href="#" class="btn btn-rounded btn-outline-primary">Get the app</a>
                            </div>
                        </div>
                    </div>
                    <div class="offset-xl-1 col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
                        <div class="circle-1"></div>
                        <div class="feature-app-img">
                            <img src="https://therichpost.com/wp-content/uploads/2021/04/iphone-img-2.png" alt="App Landing Page Template">
                        </div>
                    </div>
                </div>
                 <div class="row">
                        <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12 text-center mt-4"> 
                  Created for <a href="#" target="_blank" class="text-primary">therichpost</a>
                  </div></div>
            </div>
        </div>
    </template>
    <script>
    //Bootstrap
    import './App.css'; 
    import 'bootstrap/dist/css/bootstrap.min.css';
    export default {
     //
      
    }
    </script>

     

    Now we are done friends also and If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements. For better understanding must watch video above.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Reactjs Form Validation Working Demo

    Reactjs Form Validation Working Demo

    Hello friends, welcome back to my blog. Today in this blog post, I am going to show you, Reactjs Form Validation Working Demo.

    In this we will do:

    1. Email Format Validation.
    2. Confirm Passwords Validation.
    Reactjs Form Validation Working Demo
    React Custom Form Validation Working Demo

    For reactjs new comers, please check the below link:

    Reactjs Basic Tutorials


    Friends now I proceed onwards and here is the working code snippet for Reactjs Form Validation Working Demo and please use this carefully to avoid the mistakes:

    1. Firstly, we need fresh reactjs setup and for that, we need to run below commands into out terminal and also we should have latest node version installed on our system:

    npx create-react-app reacttemplate
    
    cd reacttemplate
    
    npm start

    2. Now we need to run below commands into our project terminal to get bootstrap and related modules into our reactjs application:

    npm install bootstrap --save
    
    npm start //For start project again

    3. Finally for the main output, we need to add below code into our reacttemplate/src/App.js file or if you have fresh setup then you can replace reacttemplate/src/App.js file code with below code:

    import React from "react";
    import './App.css'
    import 'bootstrap/dist/css/bootstrap.min.css';
    
    
    class App extends React.Component {
      //Settings the varaibles
      constructor(props) {
        super(props);
        this.state = {
          fields: {},
          errors: {}
        }
      }
    
      //Handle Validation
      handleValidation() {
        let fields = this.state.fields;
        let errors = {};
        let formIsValid = true;
    
        //Email Validation
        if (!fields["email"]) {
          formIsValid = false;
          errors["email"] = "*This field is required."
        }
        function validateEmail(email) {
            const re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
            return re.test(email);
          }
        //Email valid validation
        if (typeof fields["email"] != "undefined") {
            if (!validateEmail(fields["email"])) 
          {
            formIsValid = false;
            errors["email"] = "*Email is not valid."
          }
        }
    
        //Pssword Validation
        if (!fields["password"]) {
          formIsValid = false;
          errors["password"] = "*This field is required."
        }
    
        //Confirm Password Validation
        if (!fields["cpassword"]) {
          formIsValid = false;
          errors["cpassword"] = "*This field is required."
        }
    
        //Confirm Password Match Validation
    
        if (fields["password"] !== fields["cpassword"]) {
          formIsValid = false;
          errors["cpassword"] = "*Password doesn't match."
        }
    
        //setting the errors messages
        this.setState({ errors: errors });
        return formIsValid;
      }
      contactSubmit(e) {
        e.preventDefault();
        if (this.handleValidation()) {
             alert("Success");
        }
        else {
          // alert("Error");
        }
      }
    
      //this will set and get value from inputs fields
      handleChange(field, e) {
        let fields = this.state.fields;
        fields[field] = e.target.value;
        this.setState({ fields });
      }
      render() {
        return (
          <div className="main_container">
            <div className="container">
              <div className="row h-100 justify-content-center align-items-center bg-light mt-5">
                <div className="col-4 mt-5 mb-5 pt-5 pb-4 pl-4 pr-4">
                 
                  <h2 className="text-left mt-1 mb-3">Sign Up</h2>
                
                  <form name="contactform" onSubmit={this.contactSubmit.bind(this)}>
                    <div className="form-group pb-2">
                      <input borderColor={this.state.errors["email"] ? "red" : ""} type="text" className="form-control" placeholder="E-Mail" refs="email" onChange={this.handleChange.bind(this, "email")} value={this.state.fields["email"]} />
                      <span showerror={this.state.errors["email"] ? "yes" : ""} className="pl-3" style={{ color: "red", display: "none" }}>{this.state.errors["email"]}</span>
                    </div>
    
                    <div className="form-group pb-2">
                      <input borderColor={this.state.errors["password"] ? "red" : ""} type="password" className="form-control" placeholder="Password" refs="password" onChange={this.handleChange.bind(this, "password")} value={this.state.fields["password"]} />
                      <span showerror={this.state.errors["password"] ? "yes" : ""} className="pl-3" style={{ color: "red", display: "none" }}>{this.state.errors["password"]}</span>
                    </div>
    
                    <div className="form-group pb-4">
                      <input borderColor={this.state.errors["cpassword"] ? "red" : ""} type="password" className="form-control" placeholder="Confirm Password" refs="cpassword" onChange={this.handleChange.bind(this, "cpassword")} value={this.state.fields["cpassword"]} />
                      <span showerror={this.state.errors["cpassword"] ? "yes" : ""} className="pl-3" style={{ color: "red", display: "none" }}>{this.state.errors["cpassword"]}</span>
                    </div>
    
                    <div className="form-group">
                      <button className="btn btn-primary button_contenkt mb-3">Continue</button>
    
                     
                    </div>
                  </form>
                  
    
                  
    
                </div>
    
              </div>
            </div>
          </div>
        );
      }
    }
    export default App;

    4. Now friends, we need to below code into our reacttemplate/src/App.css file for some custom styling:

    span[showerror="yes"]{
        display: block!important;
    }
    input[bordercolor="red"]
    {
        border-color:red;
    }

    Now we are done friends. If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks

  • Angular 11 Crud With Firebase Database

    Angular 11 Crud With Firebase Database

    Hello friends, welcome back to my blog. Today in this blog post, I am going to tell you, Angular 11 Crud With Firebase Database.

    Angular 11 Crud with Firebase Database
    Angular Crud with Firebase Database
    Angular Crud Add Student
    Angular Firebase Crud
    Create Database on Firebase

    Angular 11 came and if you are new then you must check below two links:

    1. Angular11 Basic Tutorials

    Here is the code snippet for Angular 11 Crud With Firebase Database and please use carefully and avoid the mistakes.:

    1. Firstly friends we need fresh angular 11 setup and for this we need to run below commands but if you already have angular 11 setup then you can avoid below commands. Secondly we should also have latest node version installed on our system:

    npm install -g @angular/cli //Setup Angular11 atmosphere
    
    ng new angularcrud //Install New Angular App
    
    /**You need to update your Nodejs also for this verison**/
    
    cd angularcrud //Go inside the Angular 10 Project

    2. Now guy’s we need to run below commands inside your angular project to install firebase , bootstrap, toast etc modules:

    npm install bootstrap --save
    
    npm i @fortawesome/fontawesome-free
    
    npm install firebase @angular/fire --save
    
    npm install ngx-toastr --save
    
    npm install @angular/animations --save
    
    npm install ngx-pagination --save

    3. Now guy’s we need to run below commands into your angular project to create add, update and listing components:

    ng g c add-student
    
    ng g c edit-student
    
    ng g c student-list

    4. After run the above create component commands, you will see new folders into your app folder:

    Angular Components Creation
    Angular Components Creation

    5. Now add below code into your angular.json file:

    "styles": [
                  ...
                  "node_modules/bootstrap/dist/css/bootstrap.min.css",
                  "node_modules/@fortawesome/fontawesome-free/css/all.css",
                  "node_modules/ngx-toastr/toastr.css"
                ],

    6. Now guy’s we need to add firebase configuration that I have shown you in above second video(create database on firebase) and  you need to add that details in src/environments/environment.ts file:

    export const environment = {
      production: false,
        firebaseConfig : {
        apiKey: "***",
        authDomain: "***",
        databaseURL: "***",
        projectId: "***",
        storageBucket: "***",
        messagingSenderId: "***",
        appId: "***",
        measurementId: "***"
      }
    };

    7. Now guy’s we nee to add or replace below code into your app.module.ts file:

    import { BrowserModule } from '@angular/platform-browser';
    import { NgModule } from '@angular/core';
    import { AngularFireModule } from '@angular/fire';
    import { AngularFireDatabaseModule } from '@angular/fire/database';
    import { AngularFirestoreModule } from '@angular/fire/firestore';
    import { AppComponent } from './app.component';
    import { environment } from 'src/environments/environment';
    import { AddStudentComponent } from './add-student/add-student.component';
    import { StudentListComponent } from './student-list/student-list.component';
    import { EditStudentComponent } from './edit-student/edit-student.component';
    import { FormsModule, ReactiveFormsModule } from '@angular/forms';
    import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
    // NGX Pagination
    import { NgxPaginationModule } from 'ngx-pagination';
    import { ToastrModule } from 'ngx-toastr';
    import { RouterModule, Routes } from '@angular/router';
    
    // Routes array define component along with the path name for url
    const routes: Routes = [
      { path: '', redirectTo: '/register-student', pathMatch: 'full' },
      { path: 'register-student', component: AddStudentComponent },
      { path: 'view-students', component: StudentListComponent },
      { path: 'edit-student/:id', component: EditStudentComponent }
    ];
    
    @NgModule({
      declarations: [
        AppComponent,
        AddStudentComponent,
        EditStudentComponent,
        StudentListComponent
      ],
      imports: [
        BrowserModule,
        FormsModule,
        ReactiveFormsModule,
        
        AngularFireModule.initializeApp(environment.firebaseConfig),
        AngularFireDatabaseModule,
        AngularFirestoreModule,
        BrowserAnimationsModule, // required animations module
        NgxPaginationModule,
        ToastrModule.forRoot(),
        RouterModule.forRoot(routes)
      ],
      providers: [],
      bootstrap: [AppComponent]
    })
    export class AppModule { }

    8. Now guy’s we need to add below code into your app.component.html file:

    <!-- Top navigation -->
    <nav class="navbar navbar-dark fixed-top bg-dark flex-md-nowrap p-0 shadow">
      <a class="navbar-brand col-sm-3 col-md-2 mr-0" routerLink="/register-student">
        
        <span class="dasboard-text">Therichpost</span>
      </a>
      <ul class="navbar-nav px-3">
        <li class="nav-item text-nowrap">
          <a class="nav-link" routerLink="/register-student">
            <span class="user-image" style="background-image: url('assets/user.jpg')"></span>
            Hello Ajay
          </a>
        </li>
      </ul>
    </nav>
    
    <!-- Sidebar navigation -->
    <div class="container-fluid">
      <div class="row">
        <nav class="col-md-2 d-md-block bg-light sidebar" style="margin-top: 70px;">
          <div class="sidebar-sticky">
            <ul class="nav flex-column">
    
              <!-- routerLink="/register-student" to navigate to view-students component -->
              <li class="nav-item">
                <a class="nav-link" routerLink="/register-student" routerLinkActive="active">
                  <i class="fas fa-plus"></i>Add Student
                </a>
              </li>
    
              <!-- routerLink="/view-students" to navigate to view-students component -->
              <!-- routerLinkActive="active" activates active class for component-->
              <li class="nav-item">
                <a class="nav-link" routerLink="/view-students" routerLinkActive="active">
                  <i class="fas fa-list-ul"></i>Students List
                </a>
              </li>
            </ul>
          </div>
        </nav>
    
        <!-- Main content -->
        <main role="main" style="margin-top: 50px;" class="col-md-9 ml-sm-auto col-lg-10 px-4">
          <div class="inner-adjust">
    
            <!-- Use router template to show the components for which router service is activated -->
            <router-outlet></router-outlet>
    
          </div>
        </main>
    
      </div>
    </div>

    9. First create services folder into your app folder and run below command:

    ng g s services/crud

    10. Now guy’s open your app/services/crud.service.ts file and below code into it:

    import { Injectable } from '@angular/core';
    
    import { AngularFireDatabase, AngularFireList, AngularFireObject } from '@angular/fire/database';  // Firebase modules for Database, Data list and Single object
    export interface Student {
        $key: string;
        firstName: string;
        lastName: string;
        email: string
        mobileNumber: Number;
     }
    @Injectable({
      providedIn: 'root'
    })
    
    export class CrudService {
      studentsRef: AngularFireList<any>;    // Reference to Student data list, its an Observable
      studentRef: AngularFireObject<any>;   // Reference to Student object, its an Observable too
      
      // Inject AngularFireDatabase Dependency in Constructor
      constructor(private db: AngularFireDatabase) { }
    
      // Create Student
      AddStudent(student: Student) {
        this.studentsRef.push({
          firstName: student.firstName,
          lastName: student.lastName,
          email: student.email,
          mobileNumber: student.mobileNumber
        })
      }
    
      // Fetch Single Student Object
      GetStudent(id: string) {
        this.studentRef = this.db.object('students-list/' + id);
        return this.studentRef;
      }
    
      // Fetch Students List
      GetStudentsList() {
        this.studentsRef = this.db.list('students-list');
        return this.studentsRef;
      }  
    
      // Update Student Object
      UpdateStudent(student: Student) {
        this.studentRef.update({
          firstName: student.firstName,
          lastName: student.lastName,
          email: student.email,
          mobileNumber: student.mobileNumber
        })
      }  
    
      // Delete Student Object
      DeleteStudent(id: string) { 
        this.studentRef = this.db.object('students-list/'+id);
        this.studentRef.remove();
      }
      
    }

    11. Now guy’s open your app/add-student/add-student.component.ts file and add below code into it:

    import { Component, OnInit } from '@angular/core';
    import { CrudService } from '../services/crud.service';    // CRUD services API
    import { FormBuilder, FormGroup, FormControl, Validators } from '@angular/forms'; // Reactive form services
    import { ToastrService } from 'ngx-toastr'; // Alert message using NGX toastr
    
    
    @Component({
      selector: 'app-add-student',
      templateUrl: './add-student.component.html',
      styleUrls: ['./add-student.component.css']
    })
    
    export class AddStudentComponent implements OnInit {
      
      public studentForm: FormGroup;  // Define FormGroup to student's form
     
      constructor(
        public crudApi: CrudService,  // CRUD API services
        public fb: FormBuilder,       // Form Builder service for Reactive forms
        public toastr: ToastrService  // Toastr service for alert message
      ) { }
    
     
      ngOnInit() {
        this.crudApi.GetStudentsList();  // Call GetStudentsList() before main form is being called
        this.studenForm();              // Call student form when component is ready
      }
    
      // Reactive student form
      studenForm() {
        this.studentForm = this.fb.group({
          firstName: ['', [Validators.required, Validators.minLength(2)]],
          lastName: [''],
          email: ['', [Validators.required, Validators.pattern('^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$')]],
          mobileNumber: ['', [Validators.required, Validators.pattern('^[0-9]+$')]]
        })  
      }
    
      // Accessing form control using getters
      get firstName() {
        return this.studentForm.get('firstName');
      }
    
      get lastName() {
        return this.studentForm.get('lastName');
      }  
    
      get email() {
        return this.studentForm.get('email');
      }
    
      get mobileNumber() {
        return this.studentForm.get('mobileNumber');
      }
    
      // Reset student form's values
      ResetForm() {
        this.studentForm.reset();
      }  
     
      submitStudentData() {
        this.crudApi.AddStudent(this.studentForm.value); // Submit student data using CRUD API
        this.toastr.success(this.studentForm.controls['firstName'].value + ' successfully added!'); // Show success message when data is successfully submited
        this.ResetForm();  // Reset form when clicked on reset button
       };
    
    }

     

    12. Now open your app/add-student/add-student.component.html file and add below code into it:

    <div class="pt-3 pb-2 mb-3 border-bottom">
        <h1 class="h2">Add Student</h1>
        <p class="custom-text">A demo CRUD  for <strong>student management system</strong> built with <strong>Angular 10
            and Firebase</strong></p>
      </div>
      
      <!-- Student form -->
      <form [formGroup]="studentForm" (ngSubmit)="submitStudentData()" novalidate>
        <div class="row">
          <div class="col-lg-5 col-md-12 col-sm-12">
            <div class="row">
      
              <div class="col-md-12 mb-3">
                <label>First name</label>
                <input type="text" formControlName="firstName" class="form-control" required>
                <!-- Showing errors using getter method -->
                <p *ngIf="firstName.touched && firstName.invalid" class="error"><sup>*</sup>Please enter atleast first name</p>
                <p *ngIf="firstName.errors?.minlength" class="error"><sup>*</sup>Name shouldn't be less than 2 words</p>
              </div>
      
              <div class="col-md-12 mb-3">
                <label>Last name</label>
                <input type="text" formControlName="lastName" class="form-control">
              </div>
      
            </div>
      
            <div class="row">
              <div class="col-md-12 mb-3">
                <label>Email</label>
                <input type="email" formControlName="email" class="form-control" required>
                <!-- Showing errors using getter method -->
                <p *ngIf="email.touched && email.invalid" class="error"><sup>*</sup>Please provide email</p>
                <p *ngIf="email.errors?.pattern" class="error"><sup>*</sup>Please enter correct email</p>
              </div>
      
              <div class="col-md-12 mb-3">
                <label>Mobile number</label>
                <input type="text" formControlName="mobileNumber" class="form-control" required>
                <!-- Showing errors using getter method -->
                <p *ngIf="mobileNumber.touched && mobileNumber.invalid" class="error"><sup>*</sup>Please provide contact
                  number</p>
                <p *ngIf="mobileNumber.errors?.pattern" class="error"><sup>*</sup>Use numbers only
                  number</p>
              </div>
      
            </div>
      
            <div class="form-group text-right">
              <button type="button" class="btn btn-warning mr-2" (click)="ResetForm()">Reset</button>
              <button type="submit" class="btn btn-primary" [disabled]="!studentForm.valid">Add Student</button>
            </div>
      
          </div>
        </div>
      </form><!-- Student form ends-->

     

    13. Now guy’s open your app/add-student/add-student.component.css file and add below code into it:

    p.error {
        color: red;
    }

     

    14. Now open your app/edit-student/edit-student.component.ts file and add below code into it:

    import { Component, OnInit, AfterViewInit } from '@angular/core';
    import { FormGroup, FormBuilder, Validators } from '@angular/forms';
    import { CrudService } from '../services/crud.service';
    import { ActivatedRoute, Router } from "@angular/router"; // ActivatedRoue is used to get the current associated components information.
    import { Location } from '@angular/common';  // Location service is used to go back to previous component
    import { ToastrService } from 'ngx-toastr';
    
    @Component({
      selector: 'app-edit-student',
      templateUrl: './edit-student.component.html',
      styleUrls: ['./edit-student.component.css']
    })
    
    export class EditStudentComponent implements OnInit {
      editForm: FormGroup;  // Define FormGroup to student's edit form
      
      constructor(
        private crudApi: CrudService,       // Inject CRUD API in constructor
        private fb: FormBuilder,            // Inject Form Builder service for Reactive forms
        private location: Location,         // Location service to go back to previous component
        private actRoute: ActivatedRoute,   // Activated route to get the current component's inforamation
        private router: Router,             // Router service to navigate to specific component
        private toastr: ToastrService       // Toastr service for alert message
      ){ }
    
      ngOnInit() {
        this.updateStudentData();   // Call updateStudentData() as soon as the component is ready 
        const id = this.actRoute.snapshot.paramMap.get('id');  // Getting current component's id or information using ActivatedRoute service
        this.crudApi.GetStudent(id).valueChanges().subscribe(data => {
          this.editForm.setValue(data)  // Using SetValue() method, It's a ReactiveForm's API to store intial value of reactive form 
        })
      }
    
      // Accessing form control using getters
      get firstName() {
        return this.editForm.get('firstName');
      }
    
      get lastName() {
        return this.editForm.get('lastName');
      }
    
      get email() {
        return this.editForm.get('email');
      }
    
      get mobileNumber() {
        return this.editForm.get('mobileNumber');
      }  
    
      // Contains Reactive Form logic
      updateStudentData() {
        this.editForm = this.fb.group({
          firstName: ['', [Validators.required, Validators.minLength(2)]],
          lastName: [''],
          email: ['', [Validators.required, Validators.pattern('^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$')]],
          mobileNumber: ['', [Validators.required, Validators.pattern('^[0-9]+$')]]
        })
      }
    
      // Go back to previous component
      goBack() {
        this.location.back();
      }
    
      // Below methods fire when somebody click on submit button
      updateForm(){
        this.crudApi.UpdateStudent(this.editForm.value);       // Update student data using CRUD API
        this.toastr.success(this.editForm.controls['firstName'].value + ' updated successfully');   // Show succes message when data is successfully submited
        this.router.navigate(['view-students']);               // Navigate to student's list page when student data is updated
      }
    
    }

     

    15. Now open your app/edit-student/edit-student.component.html file and add below code into it:

    <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
        <h1 class="h2">Edit Student Details</h1>
        <div class="btn-toolbar mb-2 mb-md-0">
           <div class="btn-group">
              <!-- goBack() methos to back to previous component -->
              <button class="btn btn-sm btn-outline-secondary" (click)="goBack()">Go Back</button>
           </div>
        </div>
     </div>
     
     
     <div class="row">
        <div class="col-lg-12">
           <div class="pricing-header form-block mx-auto">
     
              <!-- Student's Edit Form -->
              <form [formGroup]="editForm" (ngSubmit)="updateForm()" novalidate>
                 <div class="row">
                    <div class="col-lg-5 col-md-12 col-sm-12">
                       <div class="row">
                          <div class="col-md-12 mb-3">
                             <label>First name</label>
                             <input type="text" formControlName="firstName" class="form-control" required>
                             <p *ngIf="firstName.touched && firstName.invalid" class="error">
                                 <sup>*</sup>Please enter firstname
                             </p>
                             <p *ngIf="firstName.errors?.minlength" class="error">
                                 <sup>*</sup>Name shouldn't be less than 2 words
                             </p>
                          </div>
                          <div class="col-md-12 mb-3">
                             <label>Last name</label>
                             <input type="text" formControlName="lastName" class="form-control">
                          </div>
                       </div>
                       <div class="row">
                          <div class="col-md-12 mb-3">
                             <label>Email</label>
                             <input type="email" formControlName="email" class="form-control" required>
                             <p *ngIf="email.touched && email.invalid" class="error"><sup>*</sup>Please provide email</p>
                             <p *ngIf="email.errors?.pattern" class="error"><sup>*</sup>Please enter correct email</p>
                          </div>
                          <div class="col-md-12 mb-3">
                             <label>Mobile number</label>
                             <input type="text" formControlName="mobileNumber" class="form-control" required>
                             <p *ngIf="mobileNumber.touched && mobileNumber.invalid" class="error">
                                <sup>*</sup>Please provide contact number
                             </p>
                             <p *ngIf="mobileNumber.errors?.pattern" class="error">
                                <sup>*</sup>Use numbers only number
                             </p>
                          </div>
                       </div>
                       <div class="form-group text-right">
                          <button type="submit" class="btn btn-success btn-block" [disabled]="!editForm.valid">
                              Update Student
                          </button>
                       </div>
                    </div>
                 </div>
              </form>
              <!-- Student's Edit Form ends-->
              
           </div>
        </div>
     </div>

     

    16. Now open your app/edit-student/edit-student.component.css file and add below code into it:

    p.error { color: red; }

     

    17. Now open your app/student-list/student-list.component.ts file and add below code into it:

    import { Component, OnInit } from '@angular/core';
    import { CrudService } from '../services/crud.service';  // CRUD API service class
    import { ToastrService } from 'ngx-toastr';      // Alert message using NGX toastr
    
    export interface Student {
        $key: string;
        firstName: string;
        lastName: string;
        email: string
        mobileNumber: Number;
     }
    @Component({
      selector: 'app-student-list',
      templateUrl: './student-list.component.html',
      styleUrls: ['./student-list.component.css']
    })
    
    export class StudentListComponent implements OnInit {
      p: number = 1;                      // Settup up pagination variable
      Student: Student[];                 // Save students data in Student's array.
      hideWhenNoStudent: boolean = false; // Hide students data table when no student.
      noData: boolean = false;            // Showing No Student Message, when no student in database.
      
      
    
      constructor(
        public crudApi: CrudService, // Inject student CRUD services in constructor.
        public toastr: ToastrService // Toastr service for alert message
        ){ }
    
    
      ngOnInit() {
        this.dataState(); // Initialize student's list, when component is ready
        let s = this.crudApi.GetStudentsList(); 
        s.snapshotChanges().subscribe(data => { // Using snapshotChanges() method to retrieve list of data along with metadata($key)
          this.Student = [];
          data.forEach(item => {
            let a = item.payload.toJSON(); 
            a['$key'] = item.key;
            this.Student.push(a as Student);
          })
        })
      }
    
      // Using valueChanges() method to fetch simple list of students data. It updates the state of hideWhenNoStudent, noData variables when any changes occurs in student data list in real-time.
      dataState() {     
        this.crudApi.GetStudentsList().valueChanges().subscribe(data => {
          
          if(data.length <= 0){
            this.hideWhenNoStudent = false;
            this.noData = true;
          } else {
            this.hideWhenNoStudent = true;
            this.noData = false;
          }
        })
      }
    
      // Method to delete student object
      deleteStudent(student) {
        if (window.confirm('Are sure you want to delete this student ?')) { // Asking from user before Deleting student data.
          this.crudApi.DeleteStudent(student.$key) // Using Delete student API to delete student.
          this.toastr.success(student.firstName + ' successfully deleted!'); // Alert message will show up when student successfully deleted.
        }
      }
    
    }

     

    18. Now open your app/student-list/student-list.component.thtml s file and add below code into it:

    <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
        <h1 class="h2">Students List</h1>
        <!-- It won't show if there is no student data -->
        <a routerLink="/register-student" class="btn btn-success" *ngIf="hideWhenNoStudent">
          <i class="fas fa-plus custom-fa-plus"></i>
          Add Student
        </a>
      </div>
      
      <div class="pricing-header mx-auto">
      
        <!-- No data shows when their is no student data available -->
        <div class="no-data text-center" *ngIf="noData">
          
          <p class="nodata-msg">No student added yet!</p>
          <a routerLink="/register-student" class="btn btn-success">
            <i class="fas fa-plus custom-fa-plus"></i>
            Add Student
          </a>
        </div>
      
        <!-- Showing students data -->
        <div class="table-responsive" *ngIf="hideWhenNoStudent">
          <table class="table table-bordered table-responsive-sm table-responsive-md table-responsive-lg">
            <thead>
              <tr>
                <th scope="col">Student Id</th>
                <th scope="col">Student name</th>
                <th scope="col">Email</th>
                <th scope="col">Mobile number</th>
                <th class="text-center" scope="col">Edit</th>
              </tr>
            </thead>
            <tbody>
              <!-- *ngFor loop iterates over Student array and fetch the student's data -->
              <!-- paginate pipe will add pagination in student's list, it won't show if items are less then 7 -->
              <tr *ngFor="let student of Student | paginate: { itemsPerPage: 7, currentPage: p }; let i = index;">
                <th scope="row">{{student.$key}}</th>
                <td>{{student.firstName}} {{student.lastName}}</td>
                <td>{{student.email}}</td>
                <td>{{student.mobileNumber}}</td>
                <td class="text-center action-block">
                  <!-- routerLink="/edit-student/{{student.$key}}" is refered to { path: 'edit-student/:id', component: EditStudentComponent } in app-routing.moudles.ts -->
                  <i class="far fa-edit" routerLink="/edit-student/{{student.$key}}"></i>
                  <i class="far fa-trash-alt" (click)="deleteStudent(student)"></i></td>
              </tr>
            </tbody>
          </table>
        </div>
        <!-- Pagination -->
        <pagination-controls (pageChange)="p = $event" autoHide="true" responsive="true"></pagination-controls>
      </div>

     

    This is it and please run ng serve command check the working and if you have any kind of query then please do comment below.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Thanks

    Jassa

  • Vue 3 Ecommerce Template 2 Free

    Vue 3 Ecommerce Template 2 Free

    Hello my friends, welcome back to my blog. Today in this blog post, I am going to show you, Vue 3 Ecommerce Template 2 Free.

    Vue 3 Ecommerce Template 2 Free
    Vuejs Ecommerce Template
    Vue js Ecommerce Theme

    Vue 3 came and if you are new then you must check below link::
    Vuejs


    Friends now I proceed onwards and here is the working code snippet for Vue 3 Ecommerce Template 2 Free and please use this carefully to avoid the mistakes:

    1. Firstly friends we need fresh vuejs(Vue 3) setup and for that we need to run below commands into our terminal and also w should have latest node version installed on our system:

    Guys you can skip this first step if you already have vuejs fresh setup:

    npm install -g @vue/cli
    
    vue create vueecommerce
    
    cd vueecommerce
    
    npm run serve //http://localhost:8080/

     

    2. Now friends, please download zip(in this zip file there are js, css and images for ecommerce template) file from below path and extract zip and get all the folders.

    Create ‘assets’ folder inside vueecommerce/public folder.

    Now please put that folders(which we will get from zip file) in “assets” folder.

    https://therichpost.com/downloads.zip

    3. Now friends please add below inside  vuecommerce/public/index.html file:

    ...
    <head>
       <link href="assets/css/bootstrap.min.css" rel="stylesheet">
            
        <link href="assets/css/bootstrap-responsive.min.css" rel="stylesheet">
        
        <link href="assets/css/bootstrappage.css" rel="stylesheet"/>
        
        
        <link href="assets/css/flexslider.css" rel="stylesheet"/>
        <link href="assets/css/main.css" rel="stylesheet"/>
      
       
        <script src="assets/js/jquery-1.7.2.min.js"></script>
        <script src="assets/js/bootstrap.min.js"></script>				
        <script src="assets/js/superfish.js"></script>	
        <script src="assets/js/jquery.scrolltotop.js"></script>
        <script src="assets/js/common.js"></script>
        <script src="assets/js/jquery.flexslider-min.js"></script>
        <script type="text/javascript">
          $(function() {
            $(document).ready(function() {
              $('.flexslider').flexslider({
                animation: "fade",
                slideshowSpeed: 4000,
                animationSpeed: 600,
                controlNav: false,
                directionNav: true,
                controlsContainer: ".flex-container" // the container that holds the flexslider
              });
            });
          });
        </script>
      </head>
    ...

     

    4. Finally friends we need to add below code into our src/App.vue file to get final output on web browser:

    <template>
    <div id="top-bar" class="container">
      <div class="row">
        <div class="span4">
          <form method="POST" class="search_form">
            <input type="text" class="input-block-level search-query" Placeholder="eg. T-sirt" />
          </form>
        </div>
        <div class="span8">
          <div class="account pull-right">
            <ul class="user-menu">				
              <li><a href="#">My Account</a></li>
              <li><a href="#">Your Cart</a></li>
              <li><a href="#">Checkout</a></li>					
              <li><a href="#">Login</a></li>		
            </ul>
          </div>
        </div>
      </div>
    </div>
    <div id="wrapper" class="container">
      <section class="navbar main-menu">
        <div class="navbar-inner main-menu">				
          <a href="#" class="logo pull-left">TheRichShop</a>
          <nav id="menu" class="pull-right">
            <ul>
              <li><a href="#">Woman</a>	</li>										
              <li><a href="#">Hangbag</a></li>
              <li><a href="#">Best Seller</a></li>
              <li><a href="#">Top Seller</a></li>
            </ul>
          </nav>
        </div>
      </section>
      <section  class="homepage-slider" id="home-slider">
        <div class="flexslider">
          <ul class="slides">
            <li>
              <img src="assets/images/carousel/banner-1.jpg" alt="" />
            </li>
            <li>
              <img src="assets/images/carousel/banner-2.jpg" alt="" />
              <div class="intro">
                <h1>Mid season sale</h1>
                <p><span>Up to 50% Off</span></p>
                <p><span>On selected items online and in stores</span></p>
              </div>
            </li>
          </ul>
        </div>			
      </section>
      <section class="header_text">
        We stand for top quality templates. Our genuine developers always optimized bootstrap commercial templates. 
        <br/>Don't miss to use our cheap abd best bootstrap templates.
      </section>
      <section class="main-content">
        <div class="row">
          <div class="span12">													
            <div class="row">
              <div class="span12">
                <h4 class="title">
                  <span class="pull-left"><span class="text"><span class="line">Feature <strong>Products</strong></span></span></span>
                  <span class="pull-right">
                    <a class="left button" href="#myCarousel" data-slide="prev"></a><a class="right button" href="#myCarousel" data-slide="next"></a>
                  </span>
                </h4>
                <div id="myCarousel" class="myCarousel carousel slide">
                  <div class="carousel-inner">
                    <div class="active item">
                      <ul class="thumbnails">												
                        <li class="span3">
                          <div class="product-box">
                            <span class="sale_tag"></span>
                            <p><a href="#"><img src="assets/images/ladies/1.jpg" alt="" /></a></p>
                            <a href="#" class="title">Ut wisi enim ad</a><br/>
                            <a href="#" class="category">Commodo consequat</a>
                            <p class="price">$17.25</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <span class="sale_tag"></span>
                            <p><a href="#"><img src="assets/images/ladies/2.jpg" alt="" /></a></p>
                            <a href="#" class="title">Quis nostrud exerci tation</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$32.50</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/3.jpg" alt="" /></a></p>
                            <a href="#" class="title">Know exactly turned</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$14.20</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/4.jpg" alt="" /></a></p>
                            <a href="#" class="title">You think fast</a><br/>
                            <a href="#" class="category">World once</a>
                            <p class="price">$31.45</p>
                          </div>
                        </li>
                      </ul>
                    </div>
                    <div class="item">
                      <ul class="thumbnails">
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/5.jpg" alt="" /></a></p>
                            <a href="#" class="title">Know exactly</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$22.30</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/6.jpg" alt="" /></a></p>
                            <a href="#" class="title">Ut wisi enim ad</a><br/>
                            <a href="#" class="category">Commodo consequat</a>
                            <p class="price">$40.25</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/7.jpg" alt="" /></a></p>
                            <a href="#" class="title">You think water</a><br/>
                            <a href="#" class="category">World once</a>
                            <p class="price">$10.45</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/ladies/8.jpg" alt="" /></a></p>
                            <a href="#" class="title">Quis nostrud exerci</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$35.50</p>
                          </div>
                        </li>																																	
                      </ul>
                    </div>
                  </div>							
                </div>
              </div>						
            </div>
            <br/>
            <div class="row">
              <div class="span12">
                <h4 class="title">
                  <span class="pull-left"><span class="text"><span class="line">Latest <strong>Products</strong></span></span></span>
                  <span class="pull-right">
                    <a class="left button" href="#myCarousel-2" data-slide="prev"></a><a class="right button" href="#myCarousel-2" data-slide="next"></a>
                  </span>
                </h4>
                <div id="myCarousel-2" class="myCarousel carousel slide">
                  <div class="carousel-inner">
                    <div class="active item">
                      <ul class="thumbnails">												
                        <li class="span3">
                          <div class="product-box">
                            <span class="sale_tag"></span>
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware2.jpg" alt="" /></a></p>
                            <a href="#" class="title">Ut wisi enim ad</a><br/>
                            <a href="#" class="category">Commodo consequat</a>
                            <p class="price">$25.50</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware1.jpg" alt="" /></a></p>
                            <a href="#" class="title">Quis nostrud exerci tation</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$17.55</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware6.jpg" alt="" /></a></p>
                            <a href="#" class="title">Know exactly turned</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$25.30</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware5.jpg" alt="" /></a></p>
                            <a href="#" class="title">You think fast</a><br/>
                            <a href="#" class="category">World once</a>
                            <p class="price">$25.60</p>
                          </div>
                        </li>
                      </ul>
                    </div>
                    <div class="item">
                      <ul class="thumbnails">
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware4.jpg" alt="" /></a></p>
                            <a href="#" class="title">Know exactly</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$45.50</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware3.jpg" alt="" /></a></p>
                            <a href="#" class="title">Ut wisi enim ad</a><br/>
                            <a href="#" class="category">Commodo consequat</a>
                            <p class="price">$33.50</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware2.jpg" alt="" /></a></p>
                            <a href="#" class="title">You think water</a><br/>
                            <a href="#" class="category">World once</a>
                            <p class="price">$45.30</p>
                          </div>
                        </li>
                        <li class="span3">
                          <div class="product-box">
                            <p><a href="#"><img src="assets/images/cloth/bootstrap-women-ware1.jpg" alt="" /></a></p>
                            <a href="#" class="title">Quis nostrud exerci</a><br/>
                            <a href="#" class="category">Quis nostrud</a>
                            <p class="price">$25.20</p>
                          </div>
                        </li>																																	
                      </ul>
                    </div>
                  </div>							
                </div>
              </div>						
            </div>
            <div class="row feature_box">						
              <div class="span4">
                <div class="service">
                  <div class="responsive">	
                    <img src="assets/images/feature_img_2.png" alt="" />
                    <h4>MODERN <strong>DESIGN</strong></h4>
                    <p>Lorem Ipsum is simply dummy text of the printing and printing industry unknown printer.</p>									
                  </div>
                </div>
              </div>
              <div class="span4">	
                <div class="service">
                  <div class="customize">			
                    <img src="assets/images/feature_img_1.png" alt="" />
                    <h4>FREE <strong>SHIPPING</strong></h4>
                    <p>Lorem Ipsum is simply dummy text of the printing and printing industry unknown printer.</p>
                  </div>
                </div>
              </div>
              <div class="span4">
                <div class="service">
                  <div class="support">	
                    <img src="assets/images/feature_img_3.png" alt="" />
                    <h4>24/7 LIVE <strong>SUPPORT</strong></h4>
                    <p>Lorem Ipsum is simply dummy text of the printing and printing industry unknown printer.</p>
                  </div>
                </div>
              </div>	
            </div>		
          </div>				
        </div>
      </section>
      <section class="our_client">
        <h4 class="title"><span class="text">Manufactures</span></h4>
        <div class="row">					
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/14.png" /></a>
          </div>
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/35.png" /></a>
          </div>
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/1.png" /></a>
          </div>
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/2.png" /></a>
          </div>
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/3.png" /></a>
          </div>
          <div class="span2">
            <a href="#"><img alt="" src="assets/images/clients/4.png" /></a>
          </div>
        </div>
      </section>
      <section id="footer-bar">
        <div class="row">
          <div class="span3">
            <h4>Navigation</h4>
            <ul class="nav">
              <li><a href="#">Homepage</a></li>  
              <li><a href="#">About Us</a></li>
              <li><a href="#">Contac Us</a></li>
              <li><a href="#">Your Cart</a></li>
              <li><a href="#">Login</a></li>							
            </ul>					
          </div>
          <div class="span4">
            <h4>My Account</h4>
            <ul class="nav">
              <li><a href="#">My Account</a></li>
              <li><a href="#">Order History</a></li>
              <li><a href="#">Wish List</a></li>
              <li><a href="#">Newsletter</a></li>
            </ul>
          </div>
          <div class="span5">
            <p class="logo">TheRichShop</p>
            <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. the  Lorem Ipsum has been the industry's standard dummy text ever since the you.</p>
            <br/>
            <span class="social_icons">
              <a class="facebook" href="#">Facebook</a>
              <a class="twitter" href="#">Twitter</a>
              <a class="skype" href="#">Skype</a>
              <a class="vimeo" href="#">Vimeo</a>
            </span>
          </div>					
        </div>	
      </section>
      <section id="copyright">
        <span>Copyright@2021.</span>
      </section>
    </div>
    </template>
    <style>
    .logo{font-size: 22px;
        margin: 10px 0;
        font-weight: 500;
    }
    </style>

     

    Now we are done friends also and If you have any kind of query or suggestion or any requirement then feel free to comment below.

    Note: Friends, I just tell the basic setup and things, you can change the code according to your requirements.

    I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad.

    Jassa

    Thanks