tigertag 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/LICENSE.md +21 -0
- package/README.md +653 -0
- package/bin/tigertag.js +132 -0
- package/database/id_aspect.json +1 -0
- package/database/id_brand.json +1 -0
- package/database/id_diameter.json +1 -0
- package/database/id_material.json +1 -0
- package/database/id_measure_unit.json +1 -0
- package/database/id_type.json +1 -0
- package/database/id_version.json +1 -0
- package/database/last_update.json +1 -0
- package/package.json +54 -0
- package/src/db.js +292 -0
- package/src/index.js +62 -0
- package/src/signature.js +130 -0
- package/src/tag.js +1245 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
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)
|
package/LICENSE.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# GNU General Public License v3.0
|
|
2
|
+
|
|
3
|
+
TigerTag JavaScript SDK
|
|
4
|
+
Copyright (C) 2025 TigerTag
|
|
5
|
+
|
|
6
|
+
This program is free software: you can redistribute it and/or modify
|
|
7
|
+
it under the terms of the GNU General Public License as published by
|
|
8
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
9
|
+
(at your option) any later version.
|
|
10
|
+
|
|
11
|
+
This program is distributed in the hope that it will be useful,
|
|
12
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
+
GNU General Public License for more details.
|
|
15
|
+
|
|
16
|
+
You should have received a copy of the GNU General Public License
|
|
17
|
+
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
For commercial OEM licensing inquiries, contact: licensing@tigertag.io
|