An Ember addon that provides a unified service to send data to multiple analytics integrations without re-implementing APIs.
Ember Metrics is an Ember.js addon that provides a unified service for integrating multiple analytics providers into Ember applications. It abstracts away the complexity of implementing separate APIs for each service, allowing developers to send data to tools like Google Analytics, Mixpanel, and Segment through a single interface. This simplifies adding, removing, or switching analytics tools without rewriting code.
Ember.js developers building applications that require analytics tracking across multiple providers, such as product teams needing to monitor user behavior with services like Google Analytics, Segment, or Facebook Pixel. It is particularly useful for developers managing analytics in complex single-page applications where routing and event tracking must be coordinated.
Developers choose Ember Metrics because it eliminates the need to write and maintain separate integration code for each analytics service, reducing boilerplate and potential errors. Its extensible adapter pattern supports both bundled providers and custom implementations, offering flexibility and environment-specific configuration to keep analytics logic clean and maintainable.
Send data to multiple analytics integrations without re-implementing new API
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a single metrics service with methods like trackPage and trackEvent to interact with all configured adapters, eliminating the need to implement separate APIs for each provider as shown in the service API section.
Allows adapters to run only in designated environments (development, test, production) through configuration, preventing unwanted data in non-production settings as demonstrated in the configuration examples.
Supports creating and sharing custom adapters for unsupported services via a generator and base class, making it easy to extend for niche tools as outlined in the 'Writing Your Own Adapters' section.
Enables setting properties on metrics.context to automatically merge user info or other data into all tracked events, simplifying event enrichment without repetitive code.
Only works within Ember.js applications, making it incompatible with other frameworks or vanilla JavaScript projects, which limits its utility in polyglot environments.
Setting up multiple adapters requires lengthy, service-specific config objects in environment files, which can be error-prone and hard to manage as seen in the README's configuration examples.
Some analytics services rely on community-provided adapters (e.g., Adobe DTM), which may lack active updates or thorough documentation compared to core bundled adapters.