PHPackages                             nguyenary/qr-code-monkey - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. nguyenary/qr-code-monkey

ActiveLibrary[Image &amp; Media](/categories/media)

nguyenary/qr-code-monkey
========================

PHP Library for free generator QR Code from qrcode-monkey.com

v1.0(4y ago)8222.3k↓20.7%20[6 issues](https://github.com/nguyenary/QRCodeMonkey/issues)MITPHPPHP &gt;=7.2

Since Sep 1Pushed 4y ago3 watchersCompare

[ Source](https://github.com/nguyenary/QRCodeMonkey)[ Packagist](https://packagist.org/packages/nguyenary/qr-code-monkey)[ RSS](/packages/nguyenary-qr-code-monkey/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

PHP Class Generate Free QRCode
==============================

[](#php-class-generate-free-qrcode)

> 👉 A library using PHP to generate QRCode from  free
> ✋ **NOTE:** Do not generate too many QRCode at once or your IP will be locked for a period of time

 [![](image/src/facebook.svg)](image/src/facebook.svg) [![](image/src/youtube.svg)](image/src/youtube.svg) [![](image/src/ninja.svg)](image/src/ninja.svg) [![](image/src/twitter.svg)](image/src/twitter.svg) [![](image/src/rain.svg)](image/src/rain.svg) [![](image/src/jungle.svg)](image/src/jungle.svg)

Getting started
---------------

[](#getting-started)

Use `composer` to integrate your PHP project

```
composer require nguyenary/qr-code-monkey
```

Configuration
-------------

[](#configuration)

📘 You can configure to generate QRCode or use default configuration. Below is a list of configurations that you can use

   Parameter Type Default Description     body String square  [![](image/src/qr/body/square.png)](image/src/qr/body/square.png) square
 [![](image/src/qr/body/mosaic.png)](image/src/qr/body/mosaic.png) mosaic
 [![](image/src/qr/body/dot.png)](image/src/qr/body/dot.png) dot
 [![](image/src/qr/body/circle.png)](image/src/qr/body/circle.png) circle
 [![](image/src/qr/body/circle-zebra.png)](image/src/qr/body/circle-zebra.png) circle-zebra
 [![](image/src/qr/body/circle-zebra-vertical.png)](image/src/qr/body/circle-zebra-vertical.png) circle-zebra-vertical
 [![](image/src/qr/body/circular.png)](image/src/qr/body/circular.png) circular
 [![](image/src/qr/body/edge-cut.png)](image/src/qr/body/edge-cut.png) edge-cut
 [![](image/src/qr/body/edge-cut-smooth.png)](image/src/qr/body/edge-cut-smooth.png) edge-cut-smooth
 [![](image/src/qr/body/japnese.png)](image/src/qr/body/japnese.png) japnese
 [![](image/src/qr/body/leaf.png)](image/src/qr/body/leaf.png) leaf
 [![](image/src/qr/body/pointed.png)](image/src/qr/body/pointed.png) pointed
 [![](image/src/qr/body/pointed-edge-cut.png)](image/src/qr/body/pointed-edge-cut.png) pointed-edge-cut
 [![](image/src/qr/body/pointed-in.png)](image/src/qr/body/pointed-in.png) pointed-in
 [![](image/src/qr/body/pointed-in-smooth.png)](image/src/qr/body/pointed-in-smooth.png) pointed-in-smooth
 [![](image/src/qr/body/pointed-smooth.png)](image/src/qr/body/pointed-smooth.png) pointed-smooth
 [![](image/src/qr/body/round.png)](image/src/qr/body/round.png) round
 [![](image/src/qr/body/rounded-in.png)](image/src/qr/body/rounded-in.png) rounded-in
 [![](image/src/qr/body/rounded-in-smooth.png)](image/src/qr/body/rounded-in-smooth.png) rounded-in-smooth
 [![](image/src/qr/body/rounded-pointed.png)](image/src/qr/body/rounded-pointed.png) rounded-pointed
 [![](image/src/qr/body/star.png)](image/src/qr/body/star.png) star
 [![](image/src/qr/body/diamond.png)](image/src/qr/body/diamond.png) diamond
    eye String frame0  [![](image/src/qr/eye-frames/frame0.png)](image/src/qr/eye-frames/frame0.png) frame0
 [![](image/src/qr/eye-frames/frame1.png)](image/src/qr/eye-frames/frame1.png) frame1
 [![](image/src/qr/eye-frames/frame2.png)](image/src/qr/eye-frames/frame2.png) frame2
 [![](image/src/qr/eye-frames/frame3.png)](image/src/qr/eye-frames/frame3.png) frame3
 [![](image/src/qr/eye-frames/frame4.png)](image/src/qr/eye-frames/frame4.png) frame4
 [![](image/src/qr/eye-frames/frame5.png)](image/src/qr/eye-frames/frame5.png) frame5
 [![](image/src/qr/eye-frames/frame6.png)](image/src/qr/eye-frames/frame6.png) frame6
 [![](image/src/qr/eye-frames/frame7.png)](image/src/qr/eye-frames/frame7.png) frame7
 [![](image/src/qr/eye-frames/frame8.png)](image/src/qr/eye-frames/frame8.png) frame8
 [![](image/src/qr/eye-frames/frame10.png)](image/src/qr/eye-frames/frame10.png) frame10
 [![](image/src/qr/eye-frames/frame11.png)](image/src/qr/eye-frames/frame11.png) frame11
 [![](image/src/qr/eye-frames/frame12.png)](image/src/qr/eye-frames/frame12.png) frame12
 [![](image/src/qr/eye-frames/frame13.png)](image/src/qr/eye-frames/frame13.png) frame13
 [![](image/src/qr/eye-frames/frame14.png)](image/src/qr/eye-frames/frame14.png) frame14
 [![](image/src/qr/eye-frames/frame16.png)](image/src/qr/eye-frames/frame16.png) frame16
    eyeBall String ball0  [![](image/src/qr/eye-balls/ball0.png)](image/src/qr/eye-balls/ball0.png) ball0
 [![](image/src/qr/eye-balls/ball1.png)](image/src/qr/eye-balls/ball1.png) ball1
 [![](image/src/qr/eye-balls/ball2.png)](image/src/qr/eye-balls/ball2.png) ball2
 [![](image/src/qr/eye-balls/ball3.png)](image/src/qr/eye-balls/ball3.png) ball3
 [![](image/src/qr/eye-balls/ball5.png)](image/src/qr/eye-balls/ball5.png) ball5
 [![](image/src/qr/eye-balls/ball6.png)](image/src/qr/eye-balls/ball6.png) ball6
 [![](image/src/qr/eye-balls/ball7.png)](image/src/qr/eye-balls/ball7.png) ball7
 [![](image/src/qr/eye-balls/ball8.png)](image/src/qr/eye-balls/ball8.png) ball8
 [![](image/src/qr/eye-balls/ball10.png)](image/src/qr/eye-balls/ball10.png) ball10
 [![](image/src/qr/eye-balls/ball11.png)](image/src/qr/eye-balls/ball11.png) ball11
 [![](image/src/qr/eye-balls/ball12.png)](image/src/qr/eye-balls/ball12.png) ball12
 [![](image/src/qr/eye-balls/ball13.png)](image/src/qr/eye-balls/ball13.png) ball13
 [![](image/src/qr/eye-balls/ball14.png)](image/src/qr/eye-balls/ball14.png) ball14
 [![](image/src/qr/eye-balls/ball15.png)](image/src/qr/eye-balls/ball15.png) ball15
 [![](image/src/qr/eye-balls/ball16.png)](image/src/qr/eye-balls/ball16.png) ball16
 [![](image/src/qr/eye-balls/ball17.png)](image/src/qr/eye-balls/ball17.png) ball17
 [![](image/src/qr/eye-balls/ball18.png)](image/src/qr/eye-balls/ball18.png) ball18
 [![](image/src/qr/eye-balls/ball19.png)](image/src/qr/eye-balls/ball19.png) ball19    erf1 Array \[ \] Rotate the **upper left eye** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   erf2 Array \[ \] Rotate the **upper right eye** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   erf3 Array \[ \] Rotate the **lower left eye** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   brf1 Array \[ \] Rotate the **upper left eye ball** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   brf2 Array \[ \] Rotate the **upper right eye ball** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   brf3 Array \[ \] Rotate the **lower left eye ball** element. Add **"fv"** or **"fh"** to invert element vertically or horizontally. E.g. \["fv","fh"\] inverts a element vertically and horziontally.   bodyColor String \#000000 Color of QR code body as HEX value.   bgColor String \#ffffff Color of QR code background as HEX value. Note: the background should always have a lighter color to be scanable with all devices.   eye1Color String \#000000 Color of the **upper left eye** as HEX value.   eye2Color String \#000000 Color of the **upper right eye** as HEX value.   eye3Color String \#000000 Color of the **lower left eye** as HEX value.   eyeBall1Color String \#000000 Color of the **upper left eye ball** as HEX value.   eyeBall2Color String \#000000 Color of the **upper right eye ball** as HEX value.   eyeBall3Color String \#000000 Color of the **lower left eye ball** as HEX value.   gradientColor1 String null Color 1 for gradient color of body as HEX.   gradientColor2 String null Color 2 for gradient color of body as HEX.   gradientType String linear Gradient type for color of body. Value can be **"linear"** or **"radial"**.   gradientOnEyes Boolean false Disable individual colors for the eye elements and set the gradient color for the complete QR code.  Example Usage
-------------

[](#example-usage)

> For details on the examples please see the file `example.php`

### First you need to initialize a QRCode instance

[](#first-you-need-to-initialize-a-qrcode-instance)

```
require_once 'vendor/autoload.php';

use nguyenary\QRCodeMonkey\QRCode;

$qrcode = new QRCode('nguyenary');
```

### Example easy usage:

[](#example-easy-usage)

```
print_r($qrcode->create());
```

The above code will return a URL containing a QR Code

### Example of saving QRCode as a file

[](#example-of-saving-qrcode-as-a-file)

```
$qrcode->create('file_qrcode.png');
```

### Example for config:

[](#example-for-config)

```
$qrcode = new QRCode('nguyenary');

$qrcode->setConfig([
    'bgColor' => '#FFFFFF',
    'body' => 'square',
    'bodyColor' => '#0277bd',
    'brf1' => [],
    'brf2' => [],
    'brf3' => [],
    'erf1' => [],
    'erf2' => [],
    'erf3' => [],
    'eye' => 'frame0',
    'eye1Color' => '#000000',
    'eye2Color' => '#000000',
    'eye3Color' => '#000000',
    'eyeBall' => 'ball0',
    'eyeBall1Color' => '#000000',
    'eyeBall2Color' => '#000000',
    'eyeBall3Color' => '#000000',
    'gradientColor1' => '#0277bd',
    'gradientColor2' => '#000000',
    'gradientOnEyes' => 'true',
    'gradientType' => 'linear',
]);
```

### Example for set logo, file type and size

[](#example-for-set-logo-file-type-and-size)

```
// Set logo path file to use
$qrcode->setLogo('image/facebook.png');

// Support png, svg, jpg, pdf, eps
$qrcode->setFileType('png');

// Size limit is 3480 pixel
$qrcode->setSize(200);
```

Features
--------

[](#features)

What's all the bells and whistles this project can perform?

- High quality images for printing
- Generate QRCode completely for free
- Many QRCode templates can be customized
- Can be exported as a URL or saved as a file
- Output format options (Support `png`, `svg`, `jpg`, `pdf`, `eps`)

✋ **NOTE:** Format `pdf` and `eps` no support for color gradients

Contributing
------------

[](#contributing)

This is a project I do in my spare time to contribute to the community. I would very much welcome if you would like to contribute to this project

Licensing
---------

[](#licensing)

The code in this project is licensed under MIT license

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity43

Moderate usage in the ecosystem

Community13

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1720d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/072424c6d388b6a9f8d429a4157691c205704fcf34c5410c4d5123ca7ff73207?d=identicon)[nguyenary](/maintainers/nguyenary)

---

Top Contributors

[![nguyenary](https://avatars.githubusercontent.com/u/7163751?v=4)](https://github.com/nguyenary "nguyenary (11 commits)")

---

Tags

php-class-qrcodephp-qrcodeqrcode-generatorqrcode-monkeyqrcode-printer-label

### Embed Badge

![Health badge](/badges/nguyenary-qr-code-monkey/health.svg)

```
[![Health](https://phpackages.com/badges/nguyenary-qr-code-monkey/health.svg)](https://phpackages.com/packages/nguyenary-qr-code-monkey)
```

###  Alternatives

[milon/barcode

Barcode generator like Qr Code, PDF417, C39, C39+, C39E, C39E+, C93, S25, S25+, I25, I25+, C128, C128A, C128B, C128C, 2-Digits UPC-Based Extention, 5-Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI (Variation of Plessey code)

1.5k13.3M39](/packages/milon-barcode)[bkwld/croppa

Image thumbnail creation through specially formatted URLs for Laravel

510496.0k23](/packages/bkwld-croppa)[goat1000/svggraph

Generates SVG graphs

132849.6k3](/packages/goat1000-svggraph)[cohensive/embed

Media Embed (for Laravel or as a standalone).

120370.4k](/packages/cohensive-embed)[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

63991.3k4](/packages/netresearch-rte-ckeditor-image)[humanmade/tachyon-plugin

Rewrites WordPress image URLs to use Tachyon

87338.5k2](/packages/humanmade-tachyon-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
