AngularJS Barcode Scanner
Integrate our fast and accurate AngularJS Barcode Scanner into your website or web application. Seamlessly scan 1D and 2D barcodes with real-time data capture.
Trusted by
400+
global
industry leaders
Real-time AR feedback
Deliver real-time augmented reality (AR) feedback during barcode scanning and improve user interaction. Elevate the user experience with seamless visual cues for faster, more intuitive barcode recognition.
Barcode scanning in challenging conditions
Our AngularJS Barcode Scanner ensures accurate scans even under the toughest real-world conditions:
- Damaged barcodes
- Low-light environments
- Tiny or distant barcodes
Customizable UI components
Our Ready-To-Use UI components cover all barcode scanning scenarios and are highly customizable. Learn more
Fast.
Very fast.
Every scan happens in
Add a fast and reliable AngularJS Barcode Scanner to your website
Ready to elevate your AngularJS web applications with seamless barcode scanning? Our Scanbot AngularJS Barcode Scanner SDK provides a powerful yet incredibly easy-to-use solution for scanning and parsing both 1D and 2D barcodes. Whether it’s from the camera or uploaded images, expect fast, accurate, and reliable barcode recognition in real time.
You can effortlessly integrate high-performance barcode recognition directly into your AngularJS projects with Scanbot SDK. It supports a comprehensive range of barcode formats, from Data Matrix, QR codes, and PDF417 to EAN and many more, ensuring you can scan everything you need. Our SDK is optimized for smooth integration across both mobile and desktop environments, guaranteeing consistent performance.
Plus, you can get up and running in under an hour with our Ready-To-Use UI (RTU UI) components, allowing you to customize the scanner’s user interface to perfectly match your app’s look without any extensive coding.
Need help? Our expert support team is available via Slack, Microsoft Teams, or email to guide you through the integration process and ensure you get the most out of the Scanbot Barcode Scanner SDK.
Technical requirements
Our Web SDK leverages Web Assembly for fast, efficient barcode scanning, supported by the following browser versions or newer:
- Edge: 16+
- Firefox: 53+
- Chrome: 57+
- Safari: 11+
The latest versions of the following mobile browsers are supported:
- Android: Chrome, Firefox, Edge
- iOS 14.5+: Safari, Chrome, Firefox, Edge
Discover common barcode scanning use cases
See how the Scanbot Web Barcode Scanner SDK’s scan modes improve your workflows.
-
Single Scanning
Ideal for tasks requiring the scan of just one barcode at a time, such as re-ordering products or performing a quick stock lookup in retail or inventory management systems.
-
Batch Scanning
-
Multi Scanning
-
Find & Pick
-
Scan & Count
How to integrate the Scanbot Web Barcode Scanner using AngularJS
Thanks to the Scanbot Web Barcode Scanner SDK’s Ready-to-Use UI Components, you can add barcode scanning functionalities to your website or web app in a matter of minutes.
To create a simple web app using Angular, following best practices with standalone components and injectable services, first navigate into your project directory and install the scanbot-web-sdk package using the --save option to add it to your project’s dependencies:
npm install scanbot-web-sdk --save
Copy the SDK’s WebAssembly binaries from node_modules to wasm in the public asset directory using the following command:
mkdir -p public/wasm && cp -r node_modules/scanbot-web-sdk/bundle/bin/barcode-scanner/* public/wasm
Next, add a service to handle the Scanbot SDK initialization and scanner configuration by creating a directory src/app/services and a file called barcode-scanner.service.ts inside it with the following code:
import { Injectable, signal } from '@angular/core';
import ScanbotSDK from 'scanbot-web-sdk/ui';
@Injectable({
providedIn: 'root',
})
export class BarcodeScannerService {
private readonly scanResult = signal(null);
constructor() {
this.initScanbotSDK(); // Initialize SDK in constructor
}
// Initialization method for constructor
private initScanbotSDK(): void {
try {
const settings = {
licenseKey: '', // Add your license key or leave blank for trial
enginePath: '/wasm/', // Location of the engine's WebAssembly/JS files
};
ScanbotSDK.initialize(settings);
} catch (error) {
console.error('Error initializing Scanbot SDK:', error);
}
}
getScanResult() {
return this.scanResult.asReadonly();
}
async startScanner() {
const config = this.createScannerConfig();
const result = await ScanbotSDK.UI.createBarcodeScanner(config);
if (result && result.items.length > 0) {
this.scanResult.set(result.items[0].barcode.text);
}
return result;
}
private createScannerConfig() {
const config = new ScanbotSDK.UI.Config.BarcodeScannerScreenConfiguration();
// Single/multi-barcode scanning configuration
const useCase = new ScanbotSDK.UI.Config.SingleScanningMode();
config.useCase = useCase;
// AR overlay configuration
useCase.arOverlay.visible = false;
useCase.arOverlay.automaticSelectionEnabled = false;
return config;
}
}
Now add a scanner component to which the scanner service will be attached (injected) by creating a new directory src/app/components/scanner and a file called scanner.component.ts inside it with the following code:
import { Component, inject } from '@angular/core';
import { BarcodeScannerService } from '../../services/barcode-scanner.service';
@Component({
selector: 'app-scanner',
standalone: true,
template: `
<div class="scanner-container">
<button class="scan-button" (click)="startScanner()">Start Scanner</button>
@if (scanResult()) {
<div class="result">Scanned Code: {{ scanResult() }}</div>
}
</div>
`,
styles: [
/* ... your styles ... */
],
})
export class ScannerComponent {
private readonly scannerService = inject(BarcodeScannerService);
protected readonly scanResult = this.scannerService.getScanResult();
async startScanner() {
await this.scannerService.startScanner();
}
}
Update the root app component to use our scanner component by replacing the contents of src/app/app.component.ts with the following:
import { Component } from '@angular/core';
import { ScannerComponent } from './components/scanner/scanner.component';
@Component({
selector: 'app-root',
standalone: true,
imports: [ScannerComponent],
template: `
<h1>Scanbot Barcode Scanner Demo</h1>
<app-scanner></app-scanner>
`,
styles: [
/* ... your styles ... */
],
})
export class AppComponent {}
With this setup, you now have a fully functional barcode scanner! Check out our comprehensive, step-by-step tutorial that guides you through the entire process of how to build a Web Barcode Scanner using AngularJS.
Frequently Asked Questions
Does the SDK support all platforms beyond AngularJS?
Yes, in addition to AngularJS, we offer SDKs for native iOS, Android, React Native, Flutter, Cordova, Capacitor / Ionic, Xamarin, .NET MAUI, UWP, Linux. This allows for consistent barcode scanning across all your applications.
How can I get a trial license for the AngularJS Barcode Scanner?
You can request a free trial license directly from our website to test the full capabilities of the SDK in your Angular environment.
Which barcode formats are supported by the AngularJS Barcode Scanner?
Our AngularJS Barcode Scanner SDK supports all major barcode formats, including 1D barcodes like UPC, EAN, and Code 128, as well as 2D barcodes such as QR codes, PDF417, and DataMatrix. This makes it a versatile solution that ensures accurate barcode scanning across industries such as retail, logistics, healthcare, and many more. Explore the full list of supported barcodes by the Scanbot SDK here.