Air-Gapped by Design • Zero Telemetry

The 100% Offline QR Code & Barcode Generator

Generate 7 standard 2D QR payloads and 8 linear barcode symbologies directly on your device. Zero external APIs, zero cloud tracking, zero accounts, and zero data leakage.

0 Remote APIs

All code rendered in local JS runtime without network trips.

Wi-Fi Password Shield

Sensitive credentials are masked with bullets in previews.

GS1 Modulo-10 Check

Automatic retail check-digit math for EAN-13, EAN-8, & UPC-A.

Capacitor 8 Native

Targets Android 16 (API 36) and iOS 15+ native architectures.

Experience 100% Local Generation

This interactive demo executes directly in your web browser with zero server transmission. Switch modes, type your data, and watch the matrix update in real time.

QR: WIFI Local Vector SVG
Formatted Payload Air-Gap Secure

Built for Strict Security & Reliability

Most online code generators are tracking tools disguised as utilities. CURL.LY Offline is built from the ground up to keep your data on your hardware.

100% Client-Side Engine

All rendering is calculated directly by your device CPU. QR matrix calculations and barcode encoding occur without communicating with any external API or backend service.

Wi-Fi Credential Masking

Generates standard ZXing Wi-Fi strings for WPA2, WPA3, WEP, and hidden SSIDs. Sensitive network passwords are automatically masked with bullets (••••••••) in local history.

8 Industrial Barcodes

Full support for EAN-13, EAN-8, UPC-A, UPC-E, Code 128, Code 39, ITF, and Codabar. Includes automated Modulo-10 retail check digit computation and leading zero preservation.

Vector SVG & High-Res PNG

Export pixel-perfect 1024x1024 PNG files with generous 4-module quiet zones or scalable vector SVG. Share binary images directly through iOS and Android system share sheets.

30-Item FIFO Local History

Saves up to 30 recent codes strictly inside device sandbox storage. The oldest record automatically prunes upon the 31st creation. Wipe all stored history with a single tap.

Native Mobile Optimization

Built on Capacitor 8 with full native platform bridges. Supports Android 16 (API 36) edge-to-edge layouts, iOS 15+ safe areas, tactile haptic feedback, and system theme matching.

Complete Technical Formats Specification

CURL.LY Offline adheres strictly to ISO/IEC 18004 standards and GS1 General Specifications.

2D QR Code Formats (7 Types)

Format Type URI Schema / Encoding Error Correction Primary Use Case Privacy Safeguards
Wi-Fi Network WIFI:S:...;T:...;P:...;H:...;; Level M / Q Instant guest or enterprise Wi-Fi pairing Automatic password bullet masking in history view
Contact Card vCard 3.0 (RFC 2426) Level M Digital business cards & contact sharing Standard character escaping, zero remote profile storage
Website URL https://... Level L / M / Q / H Direct browser navigation Preserves direct URLs without short-link redirect tracking
Plain Text UTF-8 String Level L / M / Q / H Notes, keys, instructions, code snippets Full Unicode & multi-line character preservation
Email Message mailto:recipient?subject=...&body=... Level M Pre-addressed customer feedback or inquiries Standard percent-encoding for special characters
Phone Number tel:+1... Level M One-tap telephone dialing International dialing code (+) preservation
SMS Message sms:recipient?body=... Level M Pre-filled mobile messaging URL-encoded message body payload

Linear Barcode Symbologies (8 Formats)

Symbology Character Set Length Rules Check Digit Algorithm Industry Application
Code 128 Full ASCII (0–127) Variable length Modulo 103 checksum Shipping containers, logistics, asset tracking
Code 39 Alphanumeric (A-Z, 0-9, - . $ / + %) Variable length Optional Modulo 43 Automotive, aerospace, defense, inventory
EAN-13 Numeric (0–9) 12 or 13 digits Modulo-10 (Auto-calculated if 12 digits provided) Global point-of-sale retail packaging
EAN-8 Numeric (0–9) 7 or 8 digits Modulo-10 (Auto-calculated if 7 digits provided) Small retail items and compact packaging
UPC-A Numeric (0–9) 11 or 12 digits Modulo-10 (Auto-calculated if 11 digits provided) North American retail point-of-sale
UPC-E Numeric (0–9) 6, 7, or 8 digits Zero-suppression retail expansion Compact North American grocery items
ITF (Interleaved 2 of 5) Numeric (0–9) Strict even number of digits Modulo 10 optional Corrugated shipping cartons and distribution
Codabar Numeric & symbols (- $ : / . +) Variable with A, B, C, D framing Self-checking format Libraries, blood banks, FedEx airbills

Why Air-Gapped Generation Matters

Online generators frequently convert your links into tracking redirects and upload sensitive credentials to remote cloud logs. Here is how CURL.LY Offline protects you:

Security Dimension Typical Online Cloud Generators CURL.LY Offline
Payload Processing ✕ Sent to remote web API ✓ 100% on device silicon
Network Dependency ✕ Requires internet connectivity ✓ Works in Airplane Mode
Wi-Fi Key Security ✕ Plaintext transmission to servers ✓ Local rendering; masked in history
Telemetry & Tracking ✕ Analytics SDKs & link redirection ✓ Zero analytics; zero user tracking
User Accounts & Profiles ✕ Mandatory registration & cookies ✓ No login, no accounts, no cookies
Data Retention ✕ Indefinite cloud database storage ✓ Device sandbox (30 FIFO cap; 1-tap wipe)
Code Transparency ✕ Closed-source proprietary black box ✓ MIT Licensed source on GitHub

Built with Modern Native Tooling

CURL.LY Offline is packaged with Capacitor 8 and React 18, utilizing validated open-source algorithms for mathematical accuracy.

Application Identifier
ly.curl.offline

Universal Bundle ID across iOS & Android packaging.

Android Target
API 36 (Android 16)

Supports edge-to-edge system insets and modern scoped storage.

iOS Compatibility
iOS 15.0+ Universal

Built with Xcode 26+ toolchain with Privacy Manifest compliance.

Visual Mandate
Zero Star Icons

Austere, professional visual design with 0 star/sparkle glyphs.

developer-quickstart.sh MIT License

# 1. Clone the official repository

git clone https://github.com/zakionechat/curl.ly-offline.git

cd curl.ly-offline


# 2. Install dependencies & run offline verification tests

npm install

npm run check # Executes typecheck, zero-star icon lint, and 46 Vitest unit tests


# 3. Build native bundles for iOS and Android

npm run build && npx cap sync

Answers to Technical & Privacy Questions

Everything you need to know about offline rendering, data safety, and barcode standards.

Does CURL.LY Offline require an internet connection?

No. All QR codes and linear barcodes are calculated and rendered completely offline using your device processor. The app functions in complete Airplane Mode with zero network access.

Are sensitive payloads like Wi-Fi credentials or contact cards uploaded?

Never. Payloads are constructed and rendered strictly in local memory on your phone. They are never sent over the internet, never logged in remote analytics, and never transformed into tracking links.

How does automatic check-digit calculation work for retail barcodes?

For symbologies like EAN-13, EAN-8, and UPC-A, CURL.LY Offline automatically computes the 13th, 8th, or 12th check digit using standard GS1 Modulo-10 weighted mathematics if you provide only the data digits.

What export formats and resolutions are supported?

You can export codes directly as crisp 1024x1024 PNG files with 4-module quiet zones or as scalable vector SVG files. You can also share binary images via native iOS and Android share sheets or copy the raw payload string to your clipboard.

How does the local history operate and can I delete it?

CURL.LY Offline stores up to 30 recent codes strictly inside your device application sandbox (localStorage). When the 31st item is created, the oldest item is automatically purged (FIFO). Users can permanently wipe all stored history at any time with the one-tap Clear All action.

Why does CURL.LY Offline enforce a strict Zero Star Icon policy?

CURL.LY Offline adheres to an austere, professional design mandate that excludes all star/sparkle glyphs, star rating popups, and magic-wand decorations in favor of clean, uncluttered, utilitarian engineering aesthetics.