ZXing (pronounced “zebra crossing”) is an open-source, multi-format 1D/2D barcode image processing library implemented in Java. Goal is to use the built-in camera on mobile phones to photograph and decode barcodes on the device, without communicating with a server.

This library is divided into several components; some are actively supported:

core: The core image decoding library, and test code
javase: J2SE-specific client code
android: Android client, called Barcode Scanner
androidtest: Android test app
android-integration: Supports integration with our Barcode Scanner app via Intent
zxingorg: The source behind zxing.org/w
zxing.appspot.com: The source behind our web-based barcode generator

Some modules are contributed and/or intermittently maintained:

javame: JavaME client
csharp: Partial C# port
cpp: Partial C++ port
rim: RIM/Blackberry-specific client build
iphone: iPhone client + port to Objective C / C++ (QR code only)
bug: Client for BugLabs’s BUG