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

Port go-nitro payment channels to TypeScript #386

Open
42 of 48 tasks
ashwinphatak opened this issue May 19, 2023 · 0 comments
Open
42 of 48 tasks

Port go-nitro payment channels to TypeScript #386

ashwinphatak opened this issue May 19, 2023 · 0 comments

Comments

@ashwinphatak
Copy link
Contributor

ashwinphatak commented May 19, 2023

  • Setup monorepo
    • Add package for go-nitro library
    • Add web-app using go-nitro library
    • Add tests to run in CI
    • Implement CI
  • Port types and interfaces
  • Port classes and implementations
    • Port classes with empty methods
    • Port implementation
      • Methods required for commands (direct-fund, virtual-fund, pay, virtual-defund, direct-defund)
  • DurableStore implementation
  • Metrics implementation
    • Implement RecordQueueLength method
    • Implement RecordObjectiveStarted and RecordObjectiveCompleted methods
    • Implement RecordFunctionDuration method
  • Test command flows
    • direct-fund
    • get-ledger-channel
    • virtual-fund
      • Test command in node environment
      • Handle nil pointer case for bigint serialization
    • get-payment-channel
    • pay
      • Test command in node environment
    • virtual-defund
      • Test command in node environment
    • direct-defund
      • Test command in node environment
      • Debug empty slice serialization mismatch
    • Match serialization for objects stored in memstore
    • Payments through intermediaries
    • End-to-end integration tests for CI
  • Implement message service for browser
    • Browser <-> Browser
      • Relayed connection
      • Direct WebRTC connection
    • Browser <-> NodeJS
    • Browser <-> go-nitro
    • Use @cerc-io/peer in ts-nitro
  • Integrate ts-nitro in mobymask-v2
    • Run ts-nitro client along with watcher server
    • Payments
      • For watcher queries
      • For phisher reports
      • For p2p network services (data forwarding)
    • Wallet/key/signature management (MetaMask snaps)
    • Routing of nitro messages in federated relay network
  • Update ts-nitro with latest go-nitro changes
@nikugogoi nikugogoi assigned nikugogoi and unassigned nikugogoi May 19, 2023
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

No branches or pull requests

2 participants