Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web Development SDK #6

Open
cmdruid opened this issue Feb 9, 2024 · 0 comments
Open

Web Development SDK #6

cmdruid opened this issue Feb 9, 2024 · 0 comments
Assignees
Labels
roadmap Discuss a topic from our Roadmap

Comments

@cmdruid
Copy link
Member

cmdruid commented Feb 9, 2024

The web development SDK (or WSDK for short) is a planned upgrade to the escrow-core library.

The goal of the WSDK is to provide a friction-less experience in setting up an e-commerce website for offering your own escrow service, without any back-end server required.

The SDK will include the following main components:

  • DraftSession: Build, negotiate and endorse contract proposals using a peer-to-peer virtual private network. Powered by nostr and works in the browser.
  • usePaymentAddress: A useSWR hook for fetching payments from a blockchain oracle.
  • DepositAccount: Class interface for managing an account and registering a payment.
  • EscrowDeposit: Class interface for managing a registered deposit.
  • EscrowContract: Class interface for viewing and moderating a contract.
  • ContractVM: Class interface for monitoring and interacting with a contract's VM.

The negotiation phase of the protocol can be handled entirely over nostr via DraftSession. The remaining parts of the protocol will be handled by the escrow server.

If a web developer wishes to white-label our service, the WSDK should provide an out-of-box experience for setting up a static web-page, with their contract templates and signing credentials baked in.

This is a discussion thread for the WSDK project. Please feel free to discuss it here.

@cmdruid cmdruid converted this from a draft issue Feb 9, 2024
@cmdruid cmdruid added the roadmap Discuss a topic from our Roadmap label Feb 9, 2024
@cmdruid cmdruid self-assigned this Feb 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
roadmap Discuss a topic from our Roadmap
Projects
Status: In Development
Development

No branches or pull requests

1 participant