feat: Arweave DVM uploads, wallet fixes, and Docker support#2
Merged
Conversation
Replace Blossom HTTP file upload servers with Arweave permanent storage via TOON Protocol's NIP-90 DVM system (kind 5094). File uploads now discover DVM providers via kind 10035 service discovery, select the cheapest provider, and publish blob storage requests with prepaid ILP micropayments. The Arweave transaction ID is returned in the ILP FULFILL data and used to construct gateway URLs (ArDrive primary, Arweave fallback). Key changes: - Add ArweaveDvmUploader with provider discovery, cost calculation, and upload via ToonClient.publishEvent() with destination routing - Update media URL detection to support ?ext= query params for extension-less Arweave gateway URLs - Remove Blossom upload config, settings UI, and sync (keep display fallback for existing Blossom-hosted content) - Fix viem parseAbi for wallet channel detail/deposit/close/settle pages Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix port mappings: btpUrl→19000 (BTP), nostrRelay→19700 (WS relay) - Fix chain identifier: evm:anvil:31337 → evm:base:31337 (matches peer) - Fix token address to match Anvil MockERC20 deployment - Strip cached TOON URLs from localStorage on load (dev config always wins) - Add DevFaucet component: 1 ETH + 1000 USDC from Anvil deployer - Fix ws-browser-shim: add Buffer import, removeListener, ping no-op - Remove events from nodeBuiltins shim (BTPClient needs real EventEmitter) - Install events browser polyfill package Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add Dockerfile, nginx.conf, and .dockerignore for containerized deployment. Remove unused spec-wip.md and update lockfile. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: replace Blossom uploads with Arweave DVM via TOON Protocol
Use bundled .tgz tarballs for @toon-protocol/* deps instead of local file: paths that don't exist in CI. Fix TS 5.8 Uint8Array generic issues, correct nostr-tools API usage (subscribeMany filter, nip57 makeZapRequest), and fix pre-existing eslint error. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replaces file:.toon-packages/*.tgz references with published npm versions (core@^1.4.1, client@^0.9.1, relay@^1.3.1, bls@^1.2.1). Fixes CI failure where tarballs were missing in GitHub Actions. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The $react shorthand fails in CI when package-lock.json is deleted before install. Use explicit version ranges instead. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Commits
54a1b92efeat: replace Blossom uploads with Arweave DVM via TOON Protocol87c6c6f8fix: TOON wallet connection, config fixes, and dev faucet471a9bc5feat: add Docker support with nginx for SPA servingTest plan
🤖 Generated with Claude Code