From 900f8f9e537b011d0c62aefd40a87bc6ea90e377 Mon Sep 17 00:00:00 2001 From: Vladimir Sinyakov Date: Fri, 31 Oct 2025 12:28:27 +0100 Subject: [PATCH 1/3] Add Smart Wallet API --- src/data/builder-tools.js | 8 ++++++++ src/data/builder-tools/smart-wallet-api.png | Bin 0 -> 48878 bytes 2 files changed, 8 insertions(+) create mode 100644 src/data/builder-tools/smart-wallet-api.png diff --git a/src/data/builder-tools.js b/src/data/builder-tools.js index 7779363626..365e5a4e19 100644 --- a/src/data/builder-tools.js +++ b/src/data/builder-tools.js @@ -1075,6 +1075,14 @@ export const Showcases = [ "https://github.com/Cardano-Forge/weld/tree/main/documentation/", tags: ["typescript", "wallet"], }, + { + title: "Smart Wallet API", + description: "Backend APIs for implementing OAuth2-backed wallets and dapps on Cardano. Deterministic address derivation allows sending funds to a Web2 account without prior onboarding. Funds are secured by Plutus smart contracts and zero-knowledge cryptography.", + preview: require("./builder-tools/smart-wallet-api.png"), + website: "https://wallet-api.zkfold.io", + getstarted: "https://docs.zkfold.io/smart-wallet/api/", + tags: ["wallet", "haskell", "http"], + }, ]; export const TagList = Object.keys(Tags); diff --git a/src/data/builder-tools/smart-wallet-api.png b/src/data/builder-tools/smart-wallet-api.png new file mode 100644 index 0000000000000000000000000000000000000000..89de0e0e1463bfe14e0d9fae9a4e715d0ef067b0 GIT binary patch literal 48878 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 JscNRT{{t4eI5GeL literal 0 HcmV?d00001 From 97e5eaed48ad6b29dd79d0575a3ebcc920cbded5 Mon Sep 17 00:00:00 2001 From: Vladimir Sinyakov Date: Fri, 31 Oct 2025 12:30:08 +0100 Subject: [PATCH 2/3] Add tag --- src/data/builder-tools.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/builder-tools.js b/src/data/builder-tools.js index 365e5a4e19..9b8be164c0 100644 --- a/src/data/builder-tools.js +++ b/src/data/builder-tools.js @@ -1081,7 +1081,7 @@ export const Showcases = [ preview: require("./builder-tools/smart-wallet-api.png"), website: "https://wallet-api.zkfold.io", getstarted: "https://docs.zkfold.io/smart-wallet/api/", - tags: ["wallet", "haskell", "http"], + tags: ["wallet", "haskell", "plutus", "http"], }, ]; From 3b4b4c719f6ac462004ecf898031f3e573758bcc Mon Sep 17 00:00:00 2001 From: Vladimir Sinyakov Date: Wed, 5 Nov 2025 15:33:45 +0100 Subject: [PATCH 3/3] Update Smart Wallet API website URL --- src/data/builder-tools.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/builder-tools.js b/src/data/builder-tools.js index 9b8be164c0..e6346573c4 100644 --- a/src/data/builder-tools.js +++ b/src/data/builder-tools.js @@ -1079,7 +1079,7 @@ export const Showcases = [ title: "Smart Wallet API", description: "Backend APIs for implementing OAuth2-backed wallets and dapps on Cardano. Deterministic address derivation allows sending funds to a Web2 account without prior onboarding. Funds are secured by Plutus smart contracts and zero-knowledge cryptography.", preview: require("./builder-tools/smart-wallet-api.png"), - website: "https://wallet-api.zkfold.io", + website: "https://wallet-api.zkfold.io/docs", getstarted: "https://docs.zkfold.io/smart-wallet/api/", tags: ["wallet", "haskell", "plutus", "http"], },