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

feat(paths): add paths-v2 visualization #28495

Merged
merged 48 commits into from
Feb 25, 2025
Merged

feat(paths): add paths-v2 visualization #28495

merged 48 commits into from
Feb 25, 2025

Conversation

thmsobrmlr
Copy link
Contributor

@thmsobrmlr thmsobrmlr commented Feb 10, 2025

Problem

We're working on an improved version of the paths insight.

Changes

This PR adds a feature flaged (paths-v2) variant of the paths insight. It contains visual improvements to the insight and works best if the edgeLimit is decreased to a value of 15. In a follow up PR the edgeLimit should be replaced with a limit of edges per "column".

How did you test this code?

👀

Copy link
Contributor

github-actions bot commented Feb 13, 2025

Size Change: +2.93 kB (+0.03%)

Total Size: 9.72 MB

Filename Size Change
frontend/dist/toolbar.js 9.72 MB +2.93 kB (+0.03%)

compressed-size-action

@thmsobrmlr thmsobrmlr marked this pull request as ready for review February 14, 2025 11:07
@thmsobrmlr thmsobrmlr requested a review from a team February 14, 2025 11:10
Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Summary

This PR introduces a new feature-flagged paths visualization (paths-v2) with improved visual styling and interaction capabilities using D3.js and Sankey diagrams.

Key changes:

  • Added new PATHS_V2 feature flag with proper ownership and team assignment
  • Implemented D3.js-based Sankey diagram visualization with recursive node/link highlighting and improved styling
  • Created comprehensive path utilities for URL handling and node selection with proper test coverage
  • Added responsive canvas sizing with proper cleanup and theme support through CSS variables
  • Introduced pathsDataLogic for managing state and interactions, including funnel conversion capabilities

Some concerns:

  • The copyName function in PathNodeLabel incorrectly uses captureException as a success handler
  • Missing accessibility attributes for interactive elements in the visualization
  • Limited test coverage for edge cases and error handling scenarios
  • Use of !important in CSS suggests potential style conflicts that need resolution

12 file(s) reviewed, 24 comment(s)
Edit PR Review Bot Settings | Greptile

Comment on lines +163 to +165
dateRange: {
date_from: values.dateRange?.date_from,
},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

logic: only copying date_from but not date_to from dateRange could lead to inconsistent date ranges in the funnel view

Suggested change
dateRange: {
date_from: values.dateRange?.date_from,
},
dateRange: {
date_from: values.dateRange?.date_from,
date_to: values.dateRange?.date_to,
},

@posthog-bot posthog-bot removed the stale label Feb 25, 2025
@PostHog PostHog deleted a comment from posthog-bot Feb 25, 2025
@thmsobrmlr thmsobrmlr enabled auto-merge (squash) February 25, 2025 09:36
@thmsobrmlr thmsobrmlr merged commit 2846e8e into master Feb 25, 2025
98 checks passed
@thmsobrmlr thmsobrmlr deleted the paths-v2 branch February 25, 2025 20:12
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

Successfully merging this pull request may close these issues.

10 participants