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

DS - Spike - Investigate a global system for component analytics #613

Open
4 tasks
TimRoe opened this issue Dec 13, 2024 · 0 comments
Open
4 tasks

DS - Spike - Investigate a global system for component analytics #613

TimRoe opened this issue Dec 13, 2024 · 0 comments
Labels
design-system front-end Ticket requires front-end work

Comments

@TimRoe
Copy link
Contributor

TimRoe commented Dec 13, 2024

Description

As part of building the design system components and observing their implementation, it was noted that it seems necessary for apps to create component wrappers for many components if only for simply passing through analytic events more easily. This is a recurring implementation hurdle to being able to seamlessly directly leverage components straight from the library. As such, this spike has been created to consider if there's an alternative method by essentially creating an analytics service that can be instantiated globally by an app and serve to handle analytics events for all design system components. Such a system must be able to handle both global events (e.g. same analytic event on all instances of the component) and ones with local context (e.g. knowing specific screen).

Narin and I discussed via Slack DM (full discussion below) and he suggested it could potentially lean on the global settings spike #256 ideas (or implemented version depending on when this is picked up).

Acceptance Criteria

  • Investigate options for creating an analytics service for design system components that could ease consuming apps from needing to routinely create wrappers to our components solely for passing analytic events
  • Create a basic proof of concept validating it could be used for both global and localized analytics
  • Evaluate if the determined solution seems simple enough to be beneficial for both the design system and consumers long term or the frequent need for app-level wrappers for analytics is optimal, if annoying
    • If it doesn't seem to make sense, document determination and proof of concept for posterity in case the situation changes in the future

Notes & Open Questions

Dev Notes:

@TimRoe TimRoe added design-system front-end Ticket requires front-end work labels Dec 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design-system front-end Ticket requires front-end work
Projects
None yet
Development

No branches or pull requests

1 participant