Gathering detailed insights and metrics for angularx-qrcode
Gathering detailed insights and metrics for angularx-qrcode
Gathering detailed insights and metrics for angularx-qrcode
Gathering detailed insights and metrics for angularx-qrcode
A fast and easy-to-use Angular QR Code Generator library with Ivy support
npm install angularx-qrcode
57.6
Supply Chain
97.1
Quality
85.8
Maintenance
100
Vulnerability
98.2
License
Module System
Min. Node Version
Typescript Support
Node Version
NPM Version
474 Stars
355 Commits
128 Forks
18 Watching
6 Branches
10 Contributors
Updated on 26 Nov 2024
TypeScript (51.93%)
HTML (37.51%)
CSS (5.52%)
JavaScript (5.04%)
Cumulative downloads
Total Downloads
Last day
6.1%
37,415
Compared to previous day
Last week
4.1%
198,086
Compared to previous week
Last month
16.7%
844,615
Compared to previous month
Last year
49.7%
7,643,302
Compared to previous year
1
angularx-qrcode
- a fast and easy-to-use Ivy compatible Ionic and Angular QR Code Generator library
angularx-qrcode
is compatible with Ionic 3/4/5/6/7/8 and Angular 4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19+ with support for the Ivy compiler. It is a drop-in replacement for the no-longer-maintained angular component ng2-qrcode and based on node-qrcode.
Angular 19 and Ionic with angularx-qrcode 19
npm install angularx-qrcode --save
# Or with yarn
yarn add angularx-qrcode
Angular 18 and Ionic with angularx-qrcode 18
npm install angularx-qrcode@18.0.2 --save
# Or with yarn
yarn add angularx-qrcode@18.0.2
Angular 17 and Ionic with angularx-qrcode 17
npm install angularx-qrcode@17.0.1 --save
# Or with yarn
yarn add angularx-qrcode@17.0.1
All supported angular versions
Angular Version | angularx-qrcode Version |
---|---|
^19 | ^19.0.0 |
^18 | ^18.0.2 |
^17 | ^17.0.1 |
^16 | ^16.0.2 |
^15 | ^15.0.1 |
^14 | ^14.0.0 |
^13 | ^13.0.15 |
^12 | ^12.0.3 |
^11 | ^11.0.0 |
^10 | ^10.0.12 |
^9 | ^2.3.7 |
^8 | ^2.1.4 |
^5 / ^6 / ^7 | ^1.6.4 |
^4 | ^1.0.3 |
Working online demo of Angular QR Code Generator
The source for the working angular app is available in projects/demo-app
.
Run the command:
npm start
and open the url http://localhost:4200/
in your browser
The source for a live angularx-qrcode demo app and more examples how to implement angularx-qrcode is located in the directory projects/demo-app
of this repository.
Since Angular 19, the latest version of the angularx-qrcode module is now exported as a standalone component. If you’re upgrading from a version before Angular 19, please replace the import statement with the component’s name since it’s now a standalone component.
# OLD - angular 18 and older
# File: app.module.ts
import { QRCodeModule } from 'angularx-qrcode';
# NEW - angular 19 and newer
// File: app.component.ts
import { QRCodeComponent } from 'angularx-qrcode';
For more uses with angular 18 and earlier see: angularx/qrcode as ngModule
// For angular 19, see above for angular 18 and older
// File: app.component.ts
// other imports...
import { QRCodeComponent } from 'angularx-qrcode';
@Component({
selector: "app-root",
imports: [
// other component imports...
QRCodeComponent,
],
templateUrl: "./app.component.html",
styleUrls: ["./app.component.css"],
})
export class AppComponent {
// your code
}
// File: app.component.html
// all your HTML...
<qrcode [qrdata]="'Your data string'" [width]="256" [errorCorrectionLevel]="'M'"></qrcode>
Now that angular/Ionic know about the new QR Code component, let's invoke it from our template. If we use a simple text-string, we need no additional code in our controller.
<qrcode [qrdata]="'Your data string'" [width]="256" [errorCorrectionLevel]="'M'"></qrcode>
In addition to our <qrcode>
-directive in app.component.html
,
lets add two lines of code to our controller app.component.ts
.
// File: app.component.ts
export class QRCodeComponent {
public myAngularxQrCode: string = null;
constructor () {
// assign a value
this.myAngularxQrCode = 'Your QR code data string';
}
}
// File: app.component.html
<qrcode [qrdata]="myAngularxQrCode" [width]="256" [errorCorrectionLevel]="'M'"></qrcode>
The online demo contains a working sample
how to download the QR Code with a button.
To download the QR Code, we have to use the qrCodeURL
attribute
of the <qrcode>
which returns a sanitized URL representing the
location of the QR Code.
// File: example.ts
export class QRCodeComponent {
public myAngularxQrCode: string = "";
public qrCodeDownloadLink: SafeUrl = "";
constructor () {
this.myAngularxQrCode = 'Your QR code data string';
}
onChangeURL(url: SafeUrl) {
this.qrCodeDownloadLink = url;
}
}
// File: example.html
<qrcode (qrCodeURL)="onChangeURL($event)" [qrdata]="myAngularxQrCode" [width]="256" [errorCorrectionLevel]="'M'"></qrcode>
<a [href]="qrCodeDownloadLink" download="qrcode">Download</a>
The file format obtained by qrCodeURL
depends directly on the
elementType of <qrcode>
. If it's either canvas, url or image,
it returns an image as .png
, if it's svg, returns a .svg
file.
Attribute | Type | Default | Description |
---|---|---|---|
allowEmptyString | Boolean | false | Allow qrdata to be an empty string |
alt | String | null | HTML alt attribute (supported by img, url) |
ariaLabel | String | null | HTML aria-label attribute (supported by canvas, img, url) |
colorDark | String | '#000000ff' | RGBA color, color of dark module (foreground) |
colorLight | String | '#ffffffff' | RGBA color, color of light module (background) |
cssClass | String | 'qrcode' | CSS Class |
elementType | String | 'canvas' | 'canvas', 'svg', 'img', 'url' (alias for 'img') |
errorCorrectionLevel | String | 'M' | QR Correction level ('L', 'M', 'Q', 'H') |
imageSrc | String | null | Link to your image |
imageHeight | Number | null | height of your image |
imageWidth | Number | null | width of your image |
margin | Number | 4 | Define how much wide the quiet zone should be. |
qrCodeURL | EventEmitter<SafeUrl> | Returns the QR Code URL | |
qrdata | String | '' | String to encode |
scale | Number | 4 | Scale factor. A value of 1 means 1px per modules (black dots). |
title | String | null | HTML title attribute (supported by canvas, img, url) |
version | Number | (auto) | 1-40 |
width | Number | 10 | Height/Width (any value) |
Depending on the amount of data of the qrdata to encode, a minimum width is required.
angularx-qrcode
supports AOT Compilation (Ahead-of-Time Compilation) which results in significant faster rendering. An AOT-enabled module is included. Further reading: https://angular.io/guide/aot-compiler
As of version 1.6.0, SSR support is fully implemented, the following workaround is no longer needed. HowTo use Angular QRCode with SSR
Support the development of angularx-qrcode (or even see your logo here?), consider sponsoring angularx-qrcode. Your support is much appreciated!
MIT License
Copyright (c) 2018 - present Andreas Jacob (Cordobo.com)
No vulnerabilities found.
Reason
no vulnerabilities detected
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
Reason
no binaries found in the repo
Reason
update tool detected
Details
Reason
dependency not pinned by hash detected -- score normalized to 7
Details
Reason
2 commit(s) out of 30 and 4 issue activity out of 30 found in the last 90 days -- score normalized to 5
Reason
GitHub code reviews found for 13 commits out of the last 30 -- score normalized to 4
Details
Reason
no badge detected
Reason
branch protection not enabled on development/release branches
Details
Reason
non read-only tokens detected in GitHub workflows
Details
Reason
security policy file not detected
Reason
project is not fuzzed
Score
Last Scanned on 2022-08-15
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More