Skip to content

feat: migrate tutorials from js-dash-sdk to evo-sdk#53

Open
thephez wants to merge 39 commits intomainfrom
v3.1-dev
Open

feat: migrate tutorials from js-dash-sdk to evo-sdk#53
thephez wants to merge 39 commits intomainfrom
v3.1-dev

Conversation

@thephez
Copy link
Collaborator

@thephez thephez commented Mar 4, 2026

Migrate tutorials from js-dash-sdk to @dashevo/evo-sdk

All platform tutorials have been rewritten from legacy js-dash-sdk (CommonJS .js) to @dashevo/evo-sdk (ESM .mjs). The new SDK uses platform addresses and deterministic key derivation, eliminating the need for manual identity ID management and wallet chain sync.

Highlights

  • New shared client setup (setupDashClient.mjs): Provides IdentityKeyManager and AddressKeyManager abstractions that derive keys from the mnemonic using DIP-13 paths, replacing the old Dash.Client wrapper
  • All tutorials migrated to ESM: 25+ tutorials rewritten as .mjs files with import/export syntax
  • Old .js tutorials removed: Legacy CJS files for identities, names, contracts, and documents deleted
  • Identity tutorials: Register, retrieve, topup, transfer credits, withdraw credits, update (add/disable keys)
  • DPNS name tutorials: Register, resolve, search, get identity names — with friendly duplicate-name error handling
  • Contract tutorials: Register (minimal, binary, indexed, timestamps, history, NFT), retrieve, retrieve history, update (minimal, history) — includes workaround for keepsHistory fetch bug (fix(drive): consolidate historical contract proof verification retry logic platform#3165)
  • Document tutorials: Submit, retrieve, update, delete
  • Simplified onboarding: create-wallet.mjs generates mnemonic + platform address + bridge funding URL; identity ID is auto-resolved from mnemonic
  • Updated README and .env.example: Reflects new env vars (PLATFORM_MNEMONIC, DATA_CONTRACT_ID), removed obsolete ones (IDENTITY_ID, SYNC_START_HEIGHT), updated getting-started flow
  • Dependency updated: dash replaced with @dashevo/evo-sdk in package.json

@thephez thephez changed the base branch from main to v2.1-dev March 4, 2026 20:33
@coderabbitai
Copy link

coderabbitai bot commented Mar 4, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f4bb95f7-8be2-4ffe-b2b7-f41504c92942

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch v3.1-dev

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

thephez and others added 11 commits March 4, 2026 17:15
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Migrate all contract register/retrieve/update tutorials from legacy
js-dash-sdk (CJS) to evo-sdk (ESM). Adds new variants (binary,
indexed, timestamps, history-retrieve) and works around
sdk.contracts.fetch() returning undefined for keepsHistory contracts
(dashpay/platform#3165).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace legacy js-dash-sdk CJS scripts (connect.js, create-wallet.js,
setupDashClient.js) with evo-sdk ESM equivalents. Add .local/ to
.gitignore.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Migrate name-register, name-resolve, name-search, and name-get-identity-names from legacy js-dash-sdk (CJS) to evo-sdk (ESM).
Add friendly error for duplicate name registration attempts.
@thephez thephez marked this pull request as ready for review March 5, 2026 21:38
thephez and others added 8 commits March 10, 2026 12:58
Replace legacy js-dash-sdk CJS scripts with evo-sdk ESM equivalents.
Add env var overrides for recipient ID and withdrawal address with
sensible testnet defaults.
Add evo-sdk ESM tutorials for adding and disabling identity keys.
Add-key auto-detects next available key ID and uses exported
dip13KeyPath helper instead of manual path construction.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@thephez thephez changed the base branch from v2.1-dev to main March 10, 2026 21:08
@thephez thephez changed the title feat: add evo sdk client setup and identity register tutorial feat: migrate tutorials from js-dash-sdk to evo-sdk Mar 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant