<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ahtisham Hasan Khan </title>
    <description>The latest articles on DEV Community by Ahtisham Hasan Khan  (@iahtisham).</description>
    <link>https://dev.to/iahtisham</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1095710%2F6388a29c-f08c-4052-801f-679d3bc1a7ea.jpg</url>
      <title>DEV Community: Ahtisham Hasan Khan </title>
      <link>https://dev.to/iahtisham</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/iahtisham"/>
    <language>en</language>
    <item>
      <title>Mastering Git Checkout: Decoding the Impact of One Simple Command</title>
      <dc:creator>Ahtisham Hasan Khan </dc:creator>
      <pubDate>Tue, 21 Nov 2023 06:27:22 +0000</pubDate>
      <link>https://dev.to/iahtisham/mastering-git-checkout-decoding-the-impact-of-one-simple-command-4e7h</link>
      <guid>https://dev.to/iahtisham/mastering-git-checkout-decoding-the-impact-of-one-simple-command-4e7h</guid>
      <description>&lt;p&gt;It all started with a meme. My team lead sent me this, and before this happened, I was one of those who used this powerful command just for creating a new branch or switching between branches.&lt;br&gt;
But kudos to this meme, I've gained a better understanding of this impactful command.&lt;/p&gt;

&lt;p&gt;In this article we will do in-depth exploration of this powerful  &lt;code&gt;git checkout&lt;/code&gt; command.  an essential tool in the Git arsenal. Whether you're a coding enthusiast, a seasoned developer, or somewhere in between, This complete guide will help you understand git checkout step by step. It uses simple code examples and clear explanations to make things easy to grasp.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9S9HrSny--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mxhswsiu00ttupy1o97t.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9S9HrSny--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mxhswsiu00ttupy1o97t.jpg" alt="Image description" width="760" height="2400"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Understanding the Basics
&lt;/h3&gt;

&lt;p&gt;The fundamental purpose of &lt;code&gt;git checkout&lt;/code&gt; is to switch between branches in Git repository, Here's a basic example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Switch&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;an&lt;/span&gt; &lt;span class="nx"&gt;existing&lt;/span&gt; &lt;span class="nx"&gt;branch&lt;/span&gt; &lt;span class="nx"&gt;named&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;feature-branch&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="nx"&gt;feature&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;branch&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;Another cool thing I like about this branch is that you can easily switch back to your previous branch with just this simple command&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Switch&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;previous&lt;/span&gt; &lt;span class="nx"&gt;branch&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Undoing Changes Like a Pro
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;git checkout&lt;/code&gt; is a handy tool for reverting changes, whether to a specific file or even the last commit. Let's look at a couple of examples:&lt;/p&gt;

&lt;h4&gt;
  
  
  File Undo
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Discard&lt;/span&gt; &lt;span class="nx"&gt;changes&lt;/span&gt; &lt;span class="nx"&gt;made&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;specific&lt;/span&gt; &lt;span class="nf"&gt;file &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;filename&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;txt&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="nx"&gt;filename&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;txt&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;Use this command when you want to revert changes made to a particular file back to its state in the last commit.&lt;/p&gt;

&lt;h4&gt;
  
  
  Commit Undo
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Undo&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;last&lt;/span&gt; &lt;span class="nx"&gt;commit&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;keeping&lt;/span&gt; &lt;span class="nx"&gt;changes&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;working&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="nx"&gt;HEAD&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;This command gracefully undoes the last commit while preserving the changes in your working directory, giving you the flexibility to make further adjustments.&lt;/p&gt;

&lt;h3&gt;
  
  
  Navigating Detached HEAD State
&lt;/h3&gt;

&lt;p&gt;Understanding detached HEAD state is crucial. Consider the following scenario:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;# Move to a specific commit without creating a branch

git checkout &lt;span class="nt"&gt;&amp;lt;commit-hash&amp;gt;&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;This command puts your repository in a "detached HEAD" state, allowing you to explore specific commits without creating a new branch.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tailoring Your Checkout with Paths and Commits
&lt;/h3&gt;

&lt;p&gt;Sometimes, you may want to inspect or revert changes made to a specific file at a particular commit. &lt;code&gt;git checkout&lt;/code&gt; enables this with ease:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Checkout&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;specific&lt;/span&gt; &lt;span class="nx"&gt;file&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;particular&lt;/span&gt; &lt;span class="nx"&gt;commit&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;commit&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;hash&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="nx"&gt;filename&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;txt&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;This command allows you to navigate through your repository's history and work with specific files at specific points in time.&lt;/p&gt;

&lt;h3&gt;
  
  
  Discarding Changes Across the Board
&lt;/h3&gt;

&lt;p&gt;To discard all uncommitted changes in your working directory, use the following command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;Discard&lt;/span&gt; &lt;span class="nx"&gt;all&lt;/span&gt; &lt;span class="nx"&gt;changes&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;working&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;

&lt;span class="nx"&gt;git&lt;/span&gt; &lt;span class="nx"&gt;checkout&lt;/span&gt; &lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;This is particularly useful when you want to start fresh or abandon changes that haven't been committed.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;Armed with these insights and practical examples, you're well on your way to mastering the art of &lt;code&gt;git checkout&lt;/code&gt;. Stay tuned as we explore advanced features and best practices in upcoming articles.&lt;/p&gt;

&lt;p&gt;Ready to elevate your Git skills? Let's dive in!&lt;/p&gt;

&lt;p&gt;If you found this guide helpful, consider &lt;a href="https://www.buymeacoffee.com/iahtisham"&gt;buying me Coffee ☕&lt;/a&gt;. Connect with me on Twitter for more updates and discussions: (&lt;a href="https://twitter.com/iAhtishamHK"&gt;https://twitter.com/iAhtishamHK&lt;/a&gt;).&lt;/p&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>webdev</category>
      <category>developers</category>
    </item>
    <item>
      <title>How to enable HTTPS for WAMP Server.</title>
      <dc:creator>Ahtisham Hasan Khan </dc:creator>
      <pubDate>Thu, 19 Oct 2023 07:22:10 +0000</pubDate>
      <link>https://dev.to/iahtisham/how-to-enable-https-for-wamp-server-4fcm</link>
      <guid>https://dev.to/iahtisham/how-to-enable-https-for-wamp-server-4fcm</guid>
      <description>&lt;p&gt;Securing your web applications with HTTPS is a fundamental aspect of web development. In a previous article, we discussed &lt;a href="https://dev.to/iahtisham/how-to-enable-https-on-xampp-server-mb1"&gt;how to enable HTTPS on XAMPP&lt;/a&gt;. Now, we'll focus on achieving the same security on WAMP, a widely used web development environment. Let's dive into the process of enabling HTTPS on WAMP for a more secure web experience.&lt;/p&gt;

&lt;p&gt;Following are some easy steps to setup enviroment to use HTTPS on WAMP.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It is Important that you have already got WAMP installed, If not you can download WAMP from &lt;a href="https://www.wampserver.com/en/"&gt;here&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After you've downloade and installed WAMP; the steps are as follows,&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 1: Download and Install OpenSSL.
&lt;/h2&gt;

&lt;p&gt;Both 32 and 64-bit versions of OpenSSL are available. Make sure you're using the right installation for your Windows version.&lt;br&gt;
 The most recent version of OpenSSL may be found &lt;a href="https://slproweb.com/products/Win32OpenSSL.html"&gt;here&lt;/a&gt;. &lt;strong&gt;When Installing OpenSSL leave all settings default.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 2: Generate Private Key and SSL certficate.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Load Command Prompt as an Administrator from your start menu and run the commands below.
To begin, navigate to the directory where OpenSSL was installed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;cd c:/program files/openssl-win64/bin/&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Generate your Private key by using follwing command.You will be asked for a passphrase. Make it anything you want just make sure you remember it for the next step.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;openssl genrsa -aes256 -out private.key 2048&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;openssl rsa -in private.key -out private.key&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now, create your Certificate thorough following commad,You will be asked several questions on this step. You can put whatever you like or just hit enter to leave it at default.

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The only one that really matters is Common Name (e.g. server FQDN) you will need to type “localhost” for this.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;openssl req -new -x509 -nodes -sha1 -key private.key -out certificate.crt -days 36500&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 3: Move your KEY and Certificate.
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create a folder named &lt;strong&gt;"KEY"&lt;/strong&gt; in the directory    &lt;strong&gt;C:\wamp64\bin\apache\apache2.4.51\conf&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Copy the generated &lt;code&gt;private.key&lt;/code&gt; and &lt;code&gt;certificate.crt&lt;/code&gt; files from &lt;strong&gt;C:\Program Files\OpenSSL-Win64\bin&lt;/strong&gt;&lt;br&gt;
to the &lt;strong&gt;C:\wamp64\bin\apache\apache2.4.27\conf\key&lt;/strong&gt; folder.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 4: Edit Your httpd.conf File
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Open &lt;strong&gt;c:/wamp64/bin/apache/apache2.4.41/conf/httpd.conf&lt;/strong&gt; and un-comment (remove the #) the following 3 lines:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;LoadModule ssl_module modules/mod_ssl.so&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Include conf/extra/httpd-ssl.conf&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;LoadModule socache_shmcb_module modules/mod_socache_shmcb.so&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 5: Edit Your httpd-ssl.conf File
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Open &lt;strong&gt;c:/wamp64/bin/apache/apache2.4.41/conf/extra/httpd-ssl.conf&lt;/strong&gt; and change all the parameters to the ones shown below.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; DocumentRoot "c:/wamp64/www"
 ServerName localhost:443
 ServerAdmin admin@example.com
 ErrorLog "${SRVROOT}/logs/error.log"
 TransferLog "${SRVROOT}/logs/access.log"
 SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
 SSLCertificateFile "${SRVROOT}/conf/key/certificate.crt"
 SSLCertificateKeyFile "${SRVROOT}/conf/key/private.key"
 CustomLog "${SRVROOT}/logs/ssl_request.log"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;The DocumentRoot folder is the location where the website files are located. The ServerName can be set as &lt;strong&gt;localhost"&lt;/strong&gt; or the name set to access the website like &lt;strong&gt;"example.com"&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 6: Restart WampServer
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Everything should be set up now. Make sure you restart WampServer for the changes to take effect. &lt;/li&gt;
&lt;li&gt;If there will be any syntax error, you can check it by navigating to  &lt;strong&gt;c:/wamp64/bin/apache/apache2.4.41/bin&lt;/strong&gt; in Command Prompt and run following command;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;httpd -t&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You should now be able to access your website with HTTPS / SSL enabled.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Public Gist URL: &lt;a href="https://gist.github.com/iahtisham/5268b2391c674d758d0c2030dfbdb882"&gt;https://gist.github.com/iahtisham/5268b2391c674d758d0c2030dfbdb882&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you found this post helpful, consider &lt;a href="https://www.buymeacoffee.com/iahtisham"&gt;buying me Coffee ☕&lt;/a&gt;. Your support keeps me fueled to create more content!&lt;/p&gt;

</description>
      <category>wamp</category>
      <category>ssl</category>
      <category>https</category>
      <category>webdev</category>
    </item>
    <item>
      <title>"Vue 3 : Smooth migration from the Options API to the Composition API in Vue 3"</title>
      <dc:creator>Ahtisham Hasan Khan </dc:creator>
      <pubDate>Sun, 20 Aug 2023 10:25:06 +0000</pubDate>
      <link>https://dev.to/iahtisham/transitioning-from-the-options-api-to-the-composition-api-in-vue-3-58be</link>
      <guid>https://dev.to/iahtisham/transitioning-from-the-options-api-to-the-composition-api-in-vue-3-58be</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;With the introduction of Vue 3, a new component option and a new advised pattern were added to the framework for creating apps. You may get top-level bindings using this magical script setup&amp;gt; method of implementing the logics without having to go through the extra trouble of declaring an export default and a setup().&lt;/p&gt;

&lt;h2&gt;
  
  
  Why &amp;lt;&lt;strong&gt;script setup&lt;/strong&gt;&amp;gt; ?
&lt;/h2&gt;

&lt;p&gt;Leaner codebase, faster development, readable and easier coding experience by reducing component choices into a single block. With each of these features, Reactivity makes things more simpler.&lt;/p&gt;

&lt;h2&gt;
  
  
  Using Props with &lt;code&gt;&amp;lt;script setup&amp;gt;&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Using the &amp;lt;&lt;strong&gt;script setup&lt;/strong&gt;&amp;gt; , a function called defineProps() is utilized. This function is a compiler macro, so there is no need to import it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;template&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Received Prop: {{ propValue }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/template&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Options API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;props&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;propValue&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;String&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Composition API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;setup&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;props&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;defineProps&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;propValue&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;String&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  Using Methods with &lt;code&gt;&amp;lt;script setup&amp;gt;&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Methods will be specified as consts and available in your template just like they were in the Options API, since methods are no longer considered objects.&lt;/p&gt;

&lt;h3&gt;
  
  
  Options API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;template&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="na"&gt;click=&lt;/span&gt;&lt;span class="s"&gt;"incrementCounter"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Increment&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Counter: {{ counter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/template&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
    &lt;span class="p"&gt;};&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="na"&gt;methods&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;incrementCounter&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;counter&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;


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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Composition API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;
&lt;span class="nt"&gt;&amp;lt;template&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="na"&gt;click=&lt;/span&gt;&lt;span class="s"&gt;"incrementCounter()"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Increment&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Counter: {{ counter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/template&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;setup&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;ref&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;vue&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;ref&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;incrementCounter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="nx"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;


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

&lt;/div&gt;



&lt;h2&gt;
  
  
  Using Computed with &amp;lt;&lt;strong&gt;script setup&lt;/strong&gt;&amp;gt;
&lt;/h2&gt;

&lt;p&gt;Computed  in Composition API operate as reactive data variables. They perform the role of a function, returning calculated values depending on reactive dependencies.&lt;/p&gt;

&lt;h3&gt;
  
  
  Options API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;
&lt;span class="nt"&gt;&amp;lt;template&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="na"&gt;click=&lt;/span&gt;&lt;span class="s"&gt;"incrementCounter"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Increment&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Counter: {{ counter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Double Counter: {{ doubleCounter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/template&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
    &lt;span class="p"&gt;};&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="na"&gt;computed&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;doubleCounter&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="na"&gt;methods&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;incrementCounter&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;counter&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;


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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Composition API :
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;
&lt;span class="nt"&gt;&amp;lt;template&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="na"&gt;click=&lt;/span&gt;&lt;span class="s"&gt;"incrementCounter"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Increment&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Counter: {{ counter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Double Counter: {{ doubleCounter }}&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/template&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;setup&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;ref&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;computed&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;vue&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;ref&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;doubleCounter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;computed&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
`&lt;/p&gt;

</description>
      <category>vue</category>
      <category>compositionapi</category>
      <category>optionsapi</category>
      <category>vue3</category>
    </item>
    <item>
      <title>How to enable HTTPS on XAMPP server.</title>
      <dc:creator>Ahtisham Hasan Khan </dc:creator>
      <pubDate>Fri, 11 Aug 2023 12:12:56 +0000</pubDate>
      <link>https://dev.to/iahtisham/how-to-enable-https-on-xampp-server-mb1</link>
      <guid>https://dev.to/iahtisham/how-to-enable-https-on-xampp-server-mb1</guid>
      <description>&lt;h3&gt;
  
  
  You can checkout this article along with more programming related tips and articles on my personal website:
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;a href="https://www.iahtisham.com/blog/how-to-enable-https-on-xampp-server"&gt;https://www.iahtisham.com/blog/how-to-enable-https-on-xampp-server&lt;/a&gt;
&lt;/h4&gt;

&lt;p&gt;Following are Steps to setup HTTPS for XAMP;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 1 Installing XAMMP
&lt;/h2&gt;

&lt;p&gt;Download and install XAMPP &lt;a href="https://www.apachefriends.org/download.html"&gt;Here&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 2 Adding VirtualHost
&lt;/h2&gt;

&lt;p&gt;Navigate to &lt;br&gt;
   &lt;code&gt;C:\xampp\apache\conf\extra&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Open &lt;strong&gt;httpd-vhosts-conf&lt;/strong&gt; file in Notepad&lt;/p&gt;

&lt;p&gt;add a &lt;strong&gt;VIRTUALHOST&lt;/strong&gt; in the end by copying following code&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  # Virtual Hosts
&amp;lt;VirtualHost *:443&amp;gt;
    DocumentRoot "C:/xampp/htdocs/"
    ServerName localhost
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/server.crt" 
    SSLCertificateKeyFile "conf/ssl.key/server.key"
    &amp;lt;Directory "C:/xampp/htdocs/"&amp;gt;
        Options All
        AllowOverride All
        Require all granted
    &amp;lt;/Directory&amp;gt;
&amp;lt;/VirtualHost&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;ServerName&lt;/strong&gt; will be the URL you want to setup HTTPS on; In this case We are using &lt;strong&gt;localhost&lt;/strong&gt; &lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 3 Creating Private Key
&lt;/h2&gt;

&lt;p&gt;Now We will create &lt;strong&gt;Private KEY&lt;/strong&gt;. Navigate to the directory &lt;strong&gt;C:\xampp\apache&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Open &lt;code&gt;makecert.bat&lt;/code&gt;. It will ask Pass Phrase and some questions. You can give answers of your choices but &lt;strong&gt;the comman name should be   the URL for which you are setting up SSL for; in this case its "localhost"&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Once done with it you can find the certificates and Key folder in the following directory&lt;/p&gt;

&lt;p&gt;&lt;code&gt;C:\xampp\apache\conf&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 4 Configure httpd.config
&lt;/h2&gt;

&lt;p&gt;Now, Navigate to &lt;code&gt;C:\xampp\apache\conf&lt;/code&gt;. We will be configuring our &lt;code&gt;httpd.config&lt;/code&gt; file,&lt;/p&gt;

&lt;p&gt;All we need to do is to include following lines in the very bottm of &lt;code&gt;httpd.config&lt;/code&gt; file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; # Virtual hosts
Include conf/extra/httpd-vhosts.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  STEP 4 Installing Certificate
&lt;/h2&gt;

&lt;p&gt;Now, Open &lt;code&gt;ssl.crt&lt;/code&gt; folder and Install the certificate on the local machine by follwing steps;]&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;open &lt;code&gt;server.crt&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;click **install certificate""&lt;/li&gt;
&lt;li&gt;click &lt;strong&gt;local machine&lt;/strong&gt;, then proceed next&lt;/li&gt;
&lt;li&gt;click on **Place all certificates in the following store"

&lt;ul&gt;
&lt;li&gt;Browse and Choose &lt;strong&gt;Trusted Root Certification Authorities&lt;/strong&gt;, click &lt;strong&gt;OK&lt;/strong&gt; and &lt;strong&gt;NEXT&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Finish&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;A message will pop up saying&lt;/strong&gt; &lt;em&gt;&lt;strong&gt;""the import was successfull""&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  STEP 5 Configure Chrome
&lt;/h2&gt;

&lt;p&gt;We will enable &lt;strong&gt;Allow invalid certificates for resources loaded from localhost.&lt;/strong&gt; in Chrome.&lt;/p&gt;

&lt;p&gt;for this paste the following on URL, it will lead you directly to it.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;chrome://flags/#allow-insecure-localhost&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Restart your XAMPP services and restart chrome as well.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You should now be able to access your website with HTTPS / SSL enabled.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Support Me!!
&lt;/h2&gt;

&lt;p&gt;If you found this post helpful, consider &lt;a href="https://www.buymeacoffee.com/iahtisham"&gt;buying me Coffee ☕&lt;/a&gt;. Your support keeps me fueled to create more content!&lt;/p&gt;

&lt;p&gt;Public Gist URL: &lt;a href="https://gist.github.com/iahtisham/09650933ea013fdc14906f56b191e180"&gt;https://gist.github.com/iahtisham/09650933ea013fdc14906f56b191e180&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Honorable Mentions:
&lt;/h3&gt;

&lt;p&gt;Transform your daily grind with this dynamic calculator website – your ultimate solution for real-world problems! Explore now for a seamless and efficient experience!. Here are some of my favorites&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.margincalculator.net/calculators/markup-calculator/"&gt;Markup Calculator&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.margincalculator.net/calculators/apy-calculator/"&gt;APY Calculator&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>xampp</category>
      <category>https</category>
      <category>ssl</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
