Skip to content

[Frontend] Comprehensive Stream Analytics Explorer, Multi-Dimensional Filtering & Accounting Export #1472

Closed

Description

@blurbeast

Overview & Background

Users managing hundreds of streams (e.g. payroll administrators, DAO coordinators, venture funds) currently have limited dashboard filtering capabilities. To support high-scale operations, FlowFi needs a dedicated Stream Analytics Explorer equipped with multi-dimensional filtering, aggregated financial summaries, real-time token volume graphs, and direct CSV/Excel/QuickBooks accounting export capabilities.


Detailed Problem Statement

  1. Inefficient Stream Discovery:
    • As stream counts grow into the hundreds or thousands, scrolling through paginated tables with only basic status tabs is tedious and slow.
  2. Missing Aggregate Financial Metrics:
    • Senders cannot view aggregate burn rates across all active streams (e.g. "Total Monthly Outflow: 45,000 USDC"), remaining aggregate runway, or historical distribution totals per token.
  3. No Direct Accounting / Tax Export:
    • Finance teams must manually copy-paste stream data into spreadsheets for monthly tax compliance, payroll reconciliations, and financial reporting.

Technical Specification & Architecture

1. Multi-Dimensional Filter Bar (frontend/src/components/analytics/FilterToolbar.tsx)

Filters supported:

  • Tokens: Multi-select dropdown with token search and logos.
  • Date Ranges: Pre-sets (Today, Last 7 Days, Month-to-Date, Quarter-to-Date, All Time, Custom Range).
  • Status: Multi-select (Active, Paused, Completed, Cancelled, Low Runway).
  • Role: Senders, Recipients, or Both.
  • Runway Threshold: Filter streams with < 7 days or < 24 hours runway remaining.
  • Search Query: Full-text debounced search across recipient address, sender address, memo, and stream ID.

2. Summary KPI Ribbon

  • Total Value Streamed (TVS): Cumulative dollar-equivalent volume streamed.
  • Current Outflow Velocity: Hourly / Daily / Monthly continuous token burn rate.
  • Active Streaming Positions: Count of open streams.
  • Average Runway Remaining: Days until collateral exhaustion across active streams.

3. Financial Export Engine (frontend/src/utils/export-accounting.ts)

  • Format options: CSV, JSON, and QuickBooks/Xero-compatible CSV formatting.
  • Columns included:
    • Stream ID, Creation Date, Sender Address, Recipient Address, Token Symbol, Token Contract Address.
    • Deposited Amount, Withdrawn Amount, Remaining Balance, Claimable Balance.
    • Start Timestamp, End Timestamp, Cliff Timestamp, Status, Last Action Ledger.

Target Files

  • frontend/src/components/analytics/StreamAnalyticsView.tsx
  • frontend/src/components/analytics/FilterToolbar.tsx
  • frontend/src/components/analytics/KpiMetricCard.tsx
  • frontend/src/utils/export-accounting.ts
  • frontend/src/app/analytics/page.tsx
  • frontend/src/__tests__/stream-analytics.test.tsx

Acceptance Criteria

  • Users can filter streams across token, status, date range, and address queries simultaneously.
  • KPI ribbon dynamically updates based on filtered dataset.
  • Export engine generates well-formatted CSV with accounting headers matching standard accounting software.
  • URL query parameters reflect active filter state (?token=USDC&status=active&range=30d) for link sharing.
  • Automated tests verify filter logic, zero-state rendering, and CSV formatting correctness.

Activity

  1. EneGab commented on Sep 27, 2026

    @EneGab

    @EneGab has applied to work on this issue as part of the Stellar Wave Program's 9th wave.

    Hi maintainer please can i work on this?

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @EneGab to this issue.

  2. bright5455 commented on Sep 27, 2026

    @bright5455
    Contributor

    @bright5455 has applied to work on this issue as part of the Stellar Wave Program's 9th wave.

    hello maintainer

    i have read and understand the issue
    im a backend engineer with five years of eperience,with my level of experience,i believe i can deliver a quality PR
    please kindly assign this task to me

    Thank you

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @bright5455 to this issue.

  3. drips-wave commented on Sep 29, 2026

    @drips-wave

    Congratulations, @bright5455! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on September 30, 2026.

    🧑‍💻 @bright5455: Please resolve the issue such that the repo's maintainers have enough time to review your contribution before the due date. You'll earn Points for completing the issue on-time, which will make you eligible for a share of the Stellar Wave Program's reward pool.

    Warning

    When opening a PR, please link it to this issue to ensure it gets tracked accurately. Points are awarded when this issue is marked as completed by the maintainer.

    🤠 Repo maintainers: Please keep an eye on the contributor's progress and review their work before the due date. You can manage this issue, including adjusting its complexity and points, here.

    🌊 Happy Wave 🌊

  4. grantfox-oss commented on Oct 10, 2026

    @grantfox-oss

    🎉 This issue has been marked as completed on GrantFox!

    @bright5455's PR #1584 was approved and merged by @K1NGD4VID.

    🏆 @bright5455: You earned 40 FoxPoints for this contribution! Your current tier: Builder (1,289 total points). Track your full progress on GrantFox.

    👏 Great work, @bright5455! Keep contributing to LabsCrypt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions