Skip to content

[Feature]: Create a streaming widget #26

@L03TJ3

Description

@L03TJ3

Short description of the new GoodWidget

We want to build a new widget to support Superfluid streaming.
The functionalities to support this widget come from the @gooddollar/streaming-sdk.
It should support the following features

  • Creating and updating existing streams (setStream)
  • Active and historical stream overview
  • GDA pool memberships (including claiming incoming streams)
  • Sup token (and reserve) balance (this is only available on the base chain)

Which repos and packages the AI should work with

  • using @gooddollar/streaming-sdk, reference is from the external repository GoodSDKs
  • external repository GoodSDKs can also be used to see a simple implementation demo of the sdk( external path: apps/demo-streaming-app). Only functionally, not UI wise.
  • external GoodWalletV2 repository

UI implementation reference

Use the external GoodDollar/GoodWalletV2 repository swap components (src/sections/Swap) as a design system reference.

Also use from the external GoodDollar/GoodWalletV2 repository the activity history (src/sections/Home/components/ActivityHistory) for design reference when it comes to displaying active streams/stream history.

We use GoodWalletV2 as styling reference when it comes to: spacing,colors,fonts,effects.
locally in GoodWidget we use the goodWalletV2Preset to represent this.

Structurally, we can use the superfluid dashboard as design reference:
Active stream(s) overview:
Image

Creating/updating a stream:
Image

User flows, states and behaviours

  • supports a connected wallet (both custodial and injected)
  • Creating and updating existing streams (setStream)
  • Active and historical stream overview
  • GDA pool memberships (including claiming incoming streams)
  • Sup token (and reserve) balance (this is only available on the base chain)

It should be a single widget supporting different features. We have WidgetTabs.tsx in the ui package for creating sectioned screens for a widget.

Create the plan

Based on the above description, create an execution plan in a new sub-issue and preserve the original issue content.
Do not execute the plan until given instructions to do so.

Sub-issue requirements:

  • Title format: [DRAFT][PLAN] <what issue is being planned>
  • Type: Task
  • Description must start with: [DRAFT] <sub-issue title>
  • Link the sub-issue back to this parent issue.

Instructions when creating the plan:

  • Map relevant files that are too be used as reference from all repos mentioned
  • import existing @GoodDollar packages
  • Map new components that should be created. Assess when a new component should be created in the new savings widget package or made part of the reusable packages/ui

Plan specification required sections:

  • Required states, flows, and behaviors
  • Execution plan
  • acceptance criteria
  • human-reviewer checklist

Metadata

Metadata

Assignees

Labels

No fields configured for Feature.

Projects

Status

In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions