We're UpFlyDev. We've been building software for twenty-something years now, for huge household names and for tiny two-person startups. Honestly? It's gotten pretty hard to surprise us.
New product? Old codebase nobody wants to touch? An AI idea you can't quite pin down? Bring it over. We'll find the smartest way to get it done, no drama, no wasted budget.
We move fast, keep things simple, and build stuff that just works.
Point the camera at any code and see what it encodes: which symbology it is, whether the product number's check digit is valid, and the country the barcode was registered in. Every answer is computed on the phone — there is no server to ask.
Rated 4+ · “Data Not Collected” on the App Store
Most scanners hand you the digits and stop. This one tells you what kind of code it was, whether the number is even well-formed, and what — honestly — it does and doesn't reveal.
Thirteen symbologies, named properly: EAN-13, EAN-8, UPC-A, UPC-E, ITF, Code 128, Code 39, Code 93, Codabar, QR, DataMatrix, Aztec and PDF417.
Product numbers carry a check digit. The app recomputes it for GTIN-8, GTIN-12, GTIN-13 and GTIN-14 — expanding UPC-E to UPC-A first — and says plainly whether it is valid.
The GS1 prefix names the organization that issued the company prefix. So the app says “registered in”, never “made in”, and explains the difference right under the flag.
Free-form codes are classified before you act on them: a link, a Wi-Fi network, a contact, an email, a phone number, an SMS, a location, a calendar event or plain text.
A GS1-128 or GS1 DataMatrix code is not one number, it is a list of fields. The app reads them out: batch or lot, best before and expiry dates, serial number, pallet number, weight and size. An identifier it does not know yet stops the reading and says so, instead of guessing.
Settings say how many scan photos are on the phone and how much room they take. Look through them, delete a single one, or clear them all and keep the scans. Nothing is measured from a guess: the numbers come from the files themselves.
Each scan keeps the camera frame it was read from, uncropped, so a row of digits in the history stays recognisable as the thing you were holding. Photos live on the device and are deleted with the scan — or on their own.
Add a note to any scan, and your earlier notes come back as one-tap chips. Filter the history by kind of code, by date, or down to the scans with a note, a photo or a failed check digit. On an iPad or a tablet held sideways, the list and the scan sit side by side.
No backend and no accounts. Recognition runs from a model bundled inside the app, which is why it works in a shop basement with no signal. The app goes online only to buy or restore Premium, through Apple or Google.
One Flutter codebase, each platform's own scanning engine underneath: ML Kit on Android, Vision on iOS.
13 symbologies 4 GTIN lengths checked 9 QR content types 500 scans kept on device 0 accounts
Plenty of apps read the first digits of a barcode and announce where a product was made. That claim is wrong, and it is wrong in a way that matters to people who scan for exactly that reason. A GS1 prefix records the organization that issued the manufacturer's company prefix — a company registered in one country routinely makes goods in another, and in-store codes carry no origin at all. So Barcode Info says “registered in”, spells the caveat out on the same screen, and for in-store and restricted-circulation ranges says so instead of showing a flag it cannot justify. Less satisfying than a confident answer; considerably more true.
Free on the App Store and Google Play. Works with no network, keeps its history on your phone, and has no accounts and no ads. Premium is one payment, never a subscription.