A quick snapshot of which did:btcr2 features each implementation supports
today. Use it to pick an implementation that fits your stack.
| Operation |
TypeScript |
Java (UR/UR) |
Python |
Rust |
Create — deterministic (k1) |
✅ |
✅ |
🚧 |
🚧 |
Create — external (x1) |
✅ |
✅ |
🚧 |
🚧 |
| Resolve — Bitcoin beacons |
✅ |
✅ |
🚧 |
🚧 |
| Resolve — sidecar |
✅ |
⚠️ |
🚧 |
🚧 |
| Resolve — CAS / IPFS |
✅ |
⚠️ |
🚧 |
🚧 |
| Update — Singleton beacon |
✅ |
⚠️ |
🚧 |
🚧 |
| Update — Map / SMT beacon |
🚧 |
🚧 |
🚧 |
🚧 |
| Deactivate |
✅* |
⚠️ |
🚧 |
🚧 |
* TS deactivate is implemented as an Update with the well-known
{ "op": "add", "path": "/deactivated", "value": true } patch. A first-class
api.btcr2.deactivate() is not yet wired through.
| Network |
TypeScript |
Java |
Python |
Rust |
bitcoin (mainnet) |
✅ |
✅ |
🚧 |
🚧 |
testnet3 |
✅ |
✅ |
🚧 |
🚧 |
testnet4 |
✅ |
✅ |
🚧 |
🚧 |
signet |
✅ |
✅ |
🚧 |
🚧 |
mutinynet |
✅ |
⚠️ |
🚧 |
🚧 |
regtest |
✅ |
✅ |
🚧 |
🚧 |
| Feature |
TypeScript |
Java |
Python |
Rust |
| Pure sans-I/O state machines |
✅ |
n/a |
🚧 |
🚧 |
| Pluggable KMS |
✅ |
⚠️ |
🚧 |
🚧 |
| Pluggable CAS executor |
✅ |
⚠️ |
🚧 |
🚧 |
| Browser-runnable (pure JS, no WASM) |
✅ |
n/a |
n/a |
🚧 |
| Universal Resolver driver |
n/a |
✅ |
n/a |
n/a |
| Universal Registrar driver |
n/a |
✅ |
n/a |
n/a |
| Symbol |
Meaning |
| ✅ |
Supported and exercised by tests / demos |
| ⚠️ |
Partial support — see implementation docs for caveats |
| 🚧 |
Not yet implemented / in progress |
| n/a |
Not applicable to this implementation’s shape |
The matrix is maintained by hand against each implementation’s current
main branch. Open an issue if a cell looks wrong.