|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | +Format based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). |
| 5 | + |
| 6 | +## [1.0.0] — 2026-05-20 |
| 7 | + |
| 8 | +### Added |
| 9 | +- `TigerTag.fromPages(payload, uid)` — primary constructor for NFC SDK integration |
| 10 | +- `TigerTag.fromDump(data)` — constructor for binary dumps (180B auto-extracts UID) |
| 11 | +- `TigerTag.fromFile(path)` — convenience constructor from .bin file |
| 12 | +- `TigerTag.create({ ...fields })` — build a new tag from scratch with all fields |
| 13 | +- `TigerTag.asInit(uid)` — create a blank TigerTag Init chip ready for programming |
| 14 | +- `TigerTag.erase()` — return 80 zero bytes to wipe a chip back to blank NDEF |
| 15 | +- `tag.patch({ ...fields })` — immutable surgical field update, signature-safe (protected: idTigertag, idProduct, uid, signatureR/S) |
| 16 | +- `tag.patchFromApi()` — auto-apply cloud API values to chip fields; returns patched tag + applied diffs |
| 17 | +- `tag.diffApi()` — compare all chip fields vs TigerTag+ cloud API; covers nozzle, bed, drying, type, material, brand, diameter, aspects, colors, quantity, unit |
| 18 | +- `tag.rawApi()` — fetch live TigerTag+ cloud product data (uses built-in fetch, Node 18+) |
| 19 | +- `tag.verify()` — autonomous ECDSA-P256 signature verification using Node.js built-in `crypto` |
| 20 | +- `tag.toDict()` — fully resolved object (all IDs replaced by labels + metadata) |
| 21 | +- `tag.toRawDict()` — raw protocol fields, no resolution |
| 22 | +- `tag.pretty()` — human-readable summary |
| 23 | +- `tag.describe()` — natural-language paragraph for LLM prompt injection |
| 24 | +- `tag.validate()` — field-level sanity checks |
| 25 | +- `tag.syncDb()` — download or update reference databases |
| 26 | +- `TigerTagDB` — loads bundled reference JSONs, auto-updates from API or GitHub |
| 27 | +- `syncDatabases()` — standalone database sync with API + GitHub fallback |
| 28 | +- `SignatureResult` — result of ECDSA verification with status constants |
| 29 | +- `ApiDiff` — (field, chipValue, apiValue) — exported from main package |
| 30 | +- `ID_TIGERTAG`, `ID_TIGERTAG_PLUS`, `ID_TIGERTAG_INIT`, `MAKER_PRODUCT_ID`, `INIT_PRODUCT_ID` — exported constants |
| 31 | +- CLI: `tigertag dump.bin` and `node -e "require('tigertag')"` |
| 32 | +- Bundled reference databases (offline use, no network required on first run) |
| 33 | +- Compatible with NTAG213, NTAG215, NTAG216 and ISO 14443 compatible chips |
| 34 | +- No external runtime dependencies — Node.js built-in `crypto` and `fetch` only |
| 35 | +- Material identification support: filament, resin (extensible to any material type) |
0 commit comments