Skip to content

About

NFC open reader app in React Native

Resources

Security policy

Stars

264 stars

Watchers

9 watching

Forks

Latest commit

 

History

281 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NFC Open ReWriter

NFC Open ReWriter

Read tags. Write records. Build NFC flows.

An open-source NFC workbench for iOS and Android, built with React Native.
Read and write NFC tags, inspect readable Type 2 memory, and build response-driven command flows.

Download for iOS · Download for Android · Project website · Discuss an NFC project

Development preview: This README describes the current source. Screenshots and newer features, including Flow Script, Type 2 Memory Scan, and the English / 繁體中文 / 日本語 interface, may differ from the versions currently available in the stores.

What you can do

  • Read, write, and reuse. Inspect tag identity, technologies, and NDEF data. Write text, links, phone / SMS / email shortcuts, Wi-Fi records, and vCards. Save records to open, copy, and share later.
  • Let tag responses shape the next command. Build NFC-A or ISO-DEP flows with captured response variables, dynamic command bytes, conditions, delays, and bounded repeats. Review commands, responses, variables, and branch decisions in the trace.
  • Look beneath the record. Inspect readable Type 2 memory pages with raw bytes and annotations, including model-specific layouts for NTAG213, NTAG215, and NTAG216.
  • Extend the source. Explore an MIT-licensed React Native app powered by react-native-nfc-manager, or talk to the team about integration and custom development.

Inside the app

The screenshots below show the development build in English. Click a screenshot to view the full image.

English iOS scan screen with NFC scan button and project links
Scan tags
Read tag information and NDEF records.
English iOS NDEF format list with text, link, phone, SMS, email, Wi-Fi and vCard
Write NDEF
Choose a record type for your tag.
English iOS Flow Script editor showing NFC-A command and response capture steps
Build NFC flows
Compose commands and capture response values.
English demo flow showing storage value 17, a matching branch and read responses
Inspect the execution
Follow commands, responses, and branch decisions.
English iOS memory view displaying demo NTAG215 pages and annotated bytes
Inspect Type 2 memory
View readable pages alongside their interpretation.
English iOS NFC toolkit with custom transceive, Flow Script and Type 2 Memory Scan
Explore the toolkit
Reach commands, flows, and tag utilities.

All screenshots use the app’s UI with demo tag data in an iOS simulator. They illustrate the interface and do not represent a new hardware test. Image provenance is recorded in screenshot-sources.json.

Features and compatibility

Area Capabilities
Read Tag UID, available technologies, and NDEF messages
Write NDEF Text, URI / custom schemes, telephone, SMS, email, Wi-Fi Simple Record, and vCard
Saved records Save, open, copy, and share NDEF records, custom commands, and flow scripts
Custom commands NFC-A and NFC-V transceive, and ISO-DEP APDU commands, subject to platform and tag support
Flow Script One NFC-A or ISO-DEP technology per run; variables, response capture, dynamic commands, conditions, bounded repeats, delays, and per-step trace
Type 2 Memory Scan Model-specific page ranges for identified NTAG213 / 215 / 216; bounded CC-declared data-area scans for other compatible Type 2 tags
Tag utilities Formatting, erase, and read-only operations where supported; NTAG213 / 215 password protection; NTAG2xx signature verification; NTAG424 DNA signature commands and tamper detection; SIC43NT rolling-code verification
Interface English, Traditional Chinese, and Japanese; system language or manual selection; light and dark appearance

An NFC-capable device and a compatible tag are required. Available technologies and operations depend on the platform, device, and tag.

How a written record is opened depends on the receiving device. iOS does not natively open NFC vCard records. Generic Type 2 scans are not complete physical-memory dumps: unreadable or unverified pages remain unavailable, and incomplete results do not establish the reason for a read failure. Memory scanning sends identification and read commands only; tag-side read counters may still advance.

Build something with us

Have an NFC product or an existing app that needs NFC? Talk to the team about prototyping, React Native integration, and custom mobile development.

Discuss an NFC project · NFC To GO · Revteltech

Tell us your target platform, tag or hardware, and what you want to build. You can also email nfctogo@gmail.com directly.

Development

Use Node.js 22.11 or newer and npm 10.9.7. package-lock.json is the project's only dependency lockfile; install with npm ci.

The postinstall script repairs the Node-only React DevTools standalone bundle to load the patched npm versions of ws and shell-quote. The React Native backend stays on 6.1.5. Source and output hashes guard this compatibility patch; review or remove it when upgrading react-devtools-core. Do not skip install scripts when using standalone DevTools.

The dependency fixes follow the upstream shell-quote advisory and ws advisory.

Run npm test for unit tests and npm start for Metro. Use npm run ios or npm run android to build and launch the app locally.

Run npm run test:dependency-security after changing the DevTools compatibility patch or its dependencies. It checks shell escaping and bounded WebSocket input using the dependency exports from the patched standalone bundle.

The project website lives in docs/. See website maintenance and GitHub Pages setup for local preview and publishing instructions.

Credits and license

Made by whitedogg13 and Revteltech. Original project credits also include Washow.

Built with React Native and react-native-nfc-manager.

MIT license — Copyright Richie Hsieh and Revteltech.

About

NFC open reader app in React Native

Resources

Security policy

Stars

264 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages