Creating a QR Code Generator Using JavaScript, HTML, and CSS
3 mins read

Creating a QR Code Generator Using JavaScript, HTML, and CSS

How to Generate QR Code Using JavaScript, HTML, and CSS

QR codes, or Quick Response codes, have become increasingly popular in recent years. These two-dimensional barcodes can store a large amount of information and can be scanned quickly and easily using a smartphone or a QR code reader. In this post, we will explore how to generate QR codes using JavaScript, HTML, and CSS.

Setting up the HTML Structure

To begin, let’s set up the basic HTML structure for our QR code generator. We will need an input field where the user can enter the data they want to encode into the QR code, a button to trigger the code generation, and a container to display the generated QR code.

<div id="qr-container">
  <input type="text" id="qr-input" placeholder="Enter data">
  <button id="generate-btn">Generate</button>
  <canvas id="qr-code"></canvas>

Styling the QR Code Generator

Next, let’s add some CSS styles to make our QR code generator visually appealing. Feel free to customize the styles to match your website’s design.

#qr-container {
  text-align: center;
  margin-top: 50px;

#qr-input {
  width: 300px;
  height: 30px;
  margin-bottom: 10px;

#generate-btn {
  padding: 10px 20px;
  background-color: #007bff;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;

#qr-code {
  margin-top: 20px;
  border: 1px solid #ccc;
  border-radius: 5px;

Generating the QR Code Using JavaScript

Now, let’s add the JavaScript code to generate the QR code. We will be using a JavaScript library called qrcode.js to handle the QR code generation.

// Get the necessary elements from the DOM
const qrInput = document.getElementById('qr-input');
const generateBtn = document.getElementById('generate-btn');
const qrCode = new QRCode(document.getElementById('qr-code'));

// Add an event listener to the generate button
generateBtn.addEventListener('click', () => {
  const data = qrInput.value;

  if (data !== '') {

Here, we are retrieving the input field, the generate button, and the QR code container from the DOM using their respective IDs. We then create a new instance of the QRCode class and pass in the QR code container element. Finally, we add an event listener to the generate button that triggers the code generation when clicked. The generated QR code is displayed within the canvas element.

Testing the QR Code Generator

Now that we have set up the HTML, CSS, and JavaScript code, let’s test our QR code generator. Open the HTML file in a web browser and try entering some data into the input field. Click the “Generate” button, and you should see the corresponding QR code displayed in the container.

You can test the QR code by scanning it with a QR code reader or a smartphone camera. The scanned data should match the input you provided.


Generating QR codes using JavaScript, HTML, and CSS is a straightforward process. By following the steps outlined in this post, you can easily create your own QR code generator and integrate it into your website or web application. QR codes have a wide range of applications, from sharing URLs and contact information to facilitating mobile payments and tracking inventory. Explore the possibilities and enhance your users’ experience with the power of QR codes.

Leave a Reply

Your email address will not be published. Required fields are marked *