
syncfusion-flutter-barcode-generator
Implements Syncfusion Flutter Barcode Generator (SfBarcodeGenerator) for generating 1D and 2D barcodes in Flutter apps. Use when working with QR codes, Data Matrix, Code128, EAN, UPC, or other machine-readable barcode formats. This skill covers barcode types, customization, sizing, text display, and integration into product labels, ticketing, or inventory systems.
- Installs
- 51
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/syncfusion/flutter-ui-components-skills --skill syncfusion-flutter-barcode-generator- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads syncfusion-flutter-barcode-generator automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Syncfusion Flutter Barcode Generator
This skill covers the Syncfusion Flutter Barcode Generator component (SfBarcodeGenerator) for creating machine-readable barcodes. The widget supports 14 different barcode symbologies including popular 1D barcodes (Code128, EAN, UPC, etc.) and 2D barcodes (QR Code, Data Matrix).
When to Use This Skill
Use this skill when you need to:
- Generate barcodes for products, assets, or documents
- Implement QR codes for URLs, contact info, or payments
- Create product labels with retail barcodes (EAN, UPC)
- Build inventory systems with barcode tracking
- Generate Data Matrix codes for compact data encoding
- Add barcode scanning integration to your Flutter apps
- Create tickets or vouchers with unique barcode identifiers
- Implement asset tracking with barcode labels
- Generate barcodes for documents or identification cards
- Customize barcode appearance with colors, text, and styling
- Support multiple barcode formats in a single application
- Display machine-readable codes for data input workflows
Component Overview
SfBarcodeGenerator is a data visualization widget designed to generate and display data in a machine-readable format. It provides:
- 14 Barcode Symbologies - 12 one-dimensional and 2 two-dimensional types
- Customizable Appearance - Colors, text styling, spacing, and bar width control
- Easy Integration - Simple API with minimal configuration
- Accessibility Support - Sufficient contrast and large fonts support
- Flexible Sizing - Automatic or manual module (bar width) configuration
- Text Display - Show/hide input values with custom formatting
Supported Barcode Types
One-Dimensional (1D) Barcodes - 12 Types
| Barcode Type | Character Support | Typical Use Cases |
|---|---|---|
| Codabar | Numeric + special chars (-, :, /, +) | Libraries, blood banks, shipping |
| Code39 | Alphanumeric (uppercase) + symbols | Automotive, defense, healthcare |
| Code39Extended | Full ASCII (all 128 characters) | Extended character encoding |
| Code93 | Alphanumeric + symbols | Compact encoding, logistics |
| Code128 | Full ASCII (automatic mode) | Most versatile, shipping, packaging |
| Code128A | ASCII 0-95 (uppercase + control) | Control character encoding |
| Code128B | ASCII 32-127 (upper + lowercase) | Standard text encoding |
| Code128C | Numeric pairs (00-99) | Numeric data, double density |
| UPCA | 12-digit numeric | Retail products (North America) |
| UPCE | 8-digit numeric (compact) | Small package retail products |
| EAN13 | 13-digit numeric | International retail products |
| EAN8 | 8-digit numeric | Small retail products |
Two-Dimensional (2D) Barcodes - 2 Types
| Barcode Type | Data Capacity | Typical Use Cases |
|---|---|---|
| QR Code | Up to 7,089 numeric or 4,296 alphanumeric | URLs, contact info, payments, marketing |
| Data Matrix | Up to 3,116 numeric or 2,335 alphanumeric | Electronics, pharmaceuticals, printed media |
QR Code Features:
- Error correction levels (Low, Medium, Quartile, High)
- Input modes (Numeric, Alphanumeric, Binary, Kanji)
- Version 1-40 (21x21 to 177x177 modules)
Data Matrix Features:
- Encoding types (Auto, ASCII, ASCIINumeric, Base256)
- Square and rectangular formats
- Compact size for small labels
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- Installation and package setup
- Add dependency to pubspec.yaml
- Import barcode package
- Basic SfBarcodeGenerator implementation
- Create your first 1D barcode (Code128)
- Create your first QR code
- Display input value below barcode
- Next steps and learning path
Barcode Types and Symbologies
📄 Read: references/barcode-types.md
- All 12 one-dimensional barcode types with examples
- All 2 two-dimensional barcode types with examples
- Detailed properties for each symbology
- Input validation rules per barcode type
- Character support and limitations
- Choosing the right barcode type for your use case
- Symbology comparison table
- Best practices for barcode selection
Customization and Styling
📄 Read: references/customization.md
- Text customization (showValue, textStyle, textSpacing, textAlign)
- Bar customization (module, barColor, backgroundColor)
- Size and layout control
- Responsive sizing strategies
- Text style properties (font, size, weight, color)
- Bar width (module) configuration for 1D and 2D barcodes
- Complete customization examples
- Best practices for scannable barcodes
Accessibility Features
📄 Read: references/accessibility.md
- Sufficient contrast support
- Large fonts and text scaling
- Color customization for accessibility
- MediaQueryData integration
- Accessibility best practices
- Testing for readability
Quick Start Examples
Basic QR Code
import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_barcodes/barcodes.dart';
class QRCodeExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('QR Code')),
body: Center(
child: Container(
height: 300,
width: 300,
child: SfBarcodeGenerator(
value: 'https://www.syncfusion.com',
symbology: QRCode(),
showValue: true,
),
),
),
);
}
}
Basic Code128 Barcode
import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_barcodes/barcodes.dart';
class Code128Example extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Code128 Barcode')),
body: Center(
child: Container(
height: 150,
child: SfBarcodeGenerator(
value: 'SYNCFUSION',
symbology: Code128(),
showValue: true,
),
),
),
);
}
}
Retail Product Barcode (EAN13)
import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_barcodes/barcodes.dart';
class RetailBarcodeExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Product Barcode')),
body: Center(
child: Container(
height: 150,
width: 280,
child: SfBarcodeGenerator(
value: '9735940564824',
symbology: EAN13(),
showValue: true,
),
),
),
);
}
}
Common Patterns
Pattern 1: QR Code with Error Correction
SfBarcodeGenerator(
value: 'https://www.example.com/product/12345',
symbology: QRCode(
errorCorrectionLevel: ErrorCorrectionLevel.high,
codeVersion: QRCodeVersion.auto,
inputMode: QRInputMode.binary,
),
showValue: true,
textSpacing: 10,
)
Pattern 2: Customized Barcode Appearance
SfBarcodeGenerator(
value: 'PRODUCT-12345',
symbology: Code128(module: 2),
barColor: Colors.deepPurple,
backgroundColor: Colors.grey[100],
textStyle: TextStyle(
fontSize: 16,
fontWeight: FontWeight.bold,
color: Colors.deepPurple,
),
showValue: true,
textAlign: TextAlign.center,
textSpacing: 15,
)
Pattern 3: Multiple Barcode Types in List
class BarcodeList extends StatelessWidget {
final List<BarcodeItem> barcodeTypes = [
BarcodeItem('Code128', '12345678', Code128()),
BarcodeItem('QR Code', 'https://example.com', QRCode()),
BarcodeItem('EAN13', '9735940564824', EAN13()),
BarcodeItem('Code39', 'CODE39', Code39()),
];
@override
Widget build(BuildContext context) {
return ListView.builder(
itemCount: barcodeTypes.length,
itemBuilder: (context, index) {
final item = barcodeTypes[index];
return Card(
margin: EdgeInsets.all(8),
child: Padding(
padding: EdgeInsets.all(16),
child: Column(
children: [
Text(
item.name,
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
SizedBox(height: 10),
Container(
height: 150,
child: SfBarcodeGenerator(
value: item.value,
symbology: item.symbology,
showValue: true,
),
),
],
),
),
);
},
);
}
}
class BarcodeItem {
final String name;
final String value;
final Symbology symbology;
BarcodeItem(this.name, this.value, this.symbology);
}
Pattern 4: Responsive Barcode Sizing
class ResponsiveBarcode extends StatelessWidget {
@override
Widget build(BuildContext context) {
final screenWidth = MediaQuery.of(context).size.width;
final barcodeSize = screenWidth * 0.8;
return Center(
child: Container(
height: barcodeSize,
width: barcodeSize,
child: SfBarcodeGenerator(
value: 'RESPONSIVE-BARCODE',
symbology: QRCode(),
showValue: true,
),
),
);
}
}
Key Properties
SfBarcodeGenerator Essential Properties
| Property | Type | Description | Default |
|---|---|---|---|
| value | String | The data to encode in the barcode | Required |
| symbology | Symbology | Barcode type (Code128, QRCode, etc.) | Code128 |
| showValue | bool | Display input value below barcode | false |
| barColor | Color | Color of barcode bars/modules | Colors.black |
| backgroundColor | Color | Background color of barcode | Colors.white |
| textStyle | TextStyle | Style for displayed text | Default TextStyle |
| textSpacing | double | Space between barcode and text | 2 |
| textAlign | TextAlign | Horizontal alignment of text | TextAlign.center |
Common Symbology Properties
| Property | Applies To | Description | Default |
|---|---|---|---|
| module | All types | Width of smallest bar/dot (logical pixels) | Auto-calculated |
Code39 Specific Properties
| Property | Type | Description | Default |
|---|---|---|---|
| enableCheckSum | bool | Add check digit to barcode | true |
QR Code Specific Properties
| Property | Type | Description | Default |
|---|---|---|---|
| errorCorrectionLevel | ErrorCorrectionLevel | Error recovery level (low, medium, quartile, high) | high |
| codeVersion | QRCodeVersion | QR version 1-40 or auto | auto |
| inputMode | QRInputMode | Input type (numeric, alphanumeric, binary, kanji) | binary |
Data Matrix Specific Properties
| Property | Type | Description | Default |
|---|---|---|---|
| encoding | DataMatrixEncoding | Encoding type (auto, ASCII, ASCIINumeric, base256) | auto |
| dataMatrixSize | DataMatrixSize | Size configuration | auto |
Common Use Cases
- Product Labeling - Generate EAN13 or UPCA barcodes for retail products
- Inventory Management - Use Code128 for tracking assets and stock items
- QR Code Marketing - Create QR codes for URLs, promotions, and campaigns
- Ticket Generation - Generate unique barcodes for event tickets and vouchers
- Document Identification - Add Code39 or Code128 to documents for tracking
- Payment QR Codes - Create QR codes for payment gateways and transactions
- Asset Tracking - Label equipment and assets with Codabar or Code128
- Shipping Labels - Use Code128 for package tracking and logistics
- Library Management - Implement Codabar for book and media tracking
- Healthcare Labels - Generate barcodes for patient records and medications
- Contact Sharing - Create QR codes with vCard data for business cards
- Wi-Fi Sharing - Generate QR codes for Wi-Fi credentials
Related Resources
- Package: syncfusion_flutter_barcodes
- API Documentation: SfBarcodeGenerator API
- GitHub Examples: Flutter Barcode Examples
- Video Tutorial: Getting Started with Flutter Barcode Generator
- Official Documentation: Syncfusion Flutter Barcode User Guide
FAQ
What does the syncfusion-flutter-barcode-generator skill do?
Implements Syncfusion Flutter Barcode Generator (SfBarcodeGenerator) for generating 1D and 2D barcodes in Flutter apps. Use when working with QR codes, Data Matrix, Code128, EAN, UPC, or other machine-readable barcode formats. This skill covers barcode types, customization, sizing, text display, and integration into product labels, ticketing, or inventory systems.
How do I install syncfusion-flutter-barcode-generator?
Run npx skills add https://github.com/syncfusion/flutter-ui-components-skills --skill syncfusion-flutter-barcode-generator in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-flutter-barcode-generator/ (personal) or .claude/skills/syncfusion-flutter-barcode-generator/ (project).
Which AI agents can use syncfusion-flutter-barcode-generator?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is syncfusion-flutter-barcode-generator safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains syncfusion-flutter-barcode-generator?
It is published by syncfusion in syncfusion/flutter-ui-components-skills. It has 51 recorded installs.
More from syncfusion/flutter-ui-components-skills
syncfusion-flutter-calendar-datepicker
syncfusion/flutter-ui-components-skills
Open the skill to read its SKILL.md instructions.
syncfusion-flutter-cartesian-charts
syncfusion/flutter-ui-components-skills
Open the skill to read its SKILL.md instructions.
syncfusion-flutter-datagrid
syncfusion/flutter-ui-components-skills
Implements Syncfusion Flutter DataGrid (SfDataGrid) for displaying and manipulating tabular data in Flutter applications. Use when working with data grids, data tables, or column-based data presentation using the syncfusionflutterdatagrid package. This skill covers DataGridSource, GridColumn configuration, sorting, filtering, paging, editing, and selection.
syncfusion-flutter-chat
syncfusion/flutter-ui-components-skills
Implements Syncfusion Flutter Chat (SfChat) and AI AssistView (SfAIAssistView) widgets for conversational interfaces in Flutter apps. Use when building chat UIs, AI chatbot interfaces, or messaging screens with support for message bubbles, composers, and action buttons. This skill covers conversation area customization, placeholder screens, theming, RTL support, and AI assistant integration.
syncfusion-flutter-circular-charts
syncfusion/flutter-ui-components-skills
Open the skill to read its SKILL.md instructions.
syncfusion-flutter-sliders
syncfusion/flutter-ui-components-skills
Open the skill to read its SKILL.md instructions.
Popular mobile skills
design-mobile-apps
designed-by-ai/skills
Design mobile app screens with Sleek, edit Sleek projects, and implement their designs in React Native or HTML.
ios-design
uizze.sh
Design and review iOS UI/UX for iPhone apps in SwiftUI, UIKit, or React Native. Use for mobile app design, screen redesigns, navigation flows, typography, forms, keyboard and safe-area layout, and accessibility checks. Apply Apple Human Interface Guidelines and consult real product references through the optional Uizze connection.
vercel-react-native-skills
vercel-labs/agent-skills
React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.
animate-expo
emilkowalski/skills
Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it animate, which thread it runs on, which properties, spring or timing, how the gesture hands off, how it degrades. Writes the implementation with Reanimated, Gesture Handler, Expo Router and expo-haptics. Use when animating anything in an Expo app, adding gestures, sheets, screen transitions, press feedback or haptics, or fixing motion that stutters on device. For web animation use animate.
xcode-project-setup
firebase/agent-skills
Safely modifies Xcode projects (.pbxproj) to add Swift Packages and link files. Use this skill whenever an iOS project needs dependencies installed (e.g. Firebase, Alamofire).
firebase-remote-config-basics
firebase/agent-skills
Manages Firebase Remote Config templates, feature flags, loading strategies, and SDKs (Android, iOS). Use when downloading/deploying remoteconfig JSON templates, managing version history/feature flags, setting in-app defaults, fetchAndActivate(), real-time listeners, or SDK setup. Don't use for Firebase Hosting, Auth, Firestore, Data Connect, Crashlytics, or App Hosting.