Analytics integration for Redux and ngrx/store
- React Native support
- works well with React and Angular apps
- track analytics events offline
- centralize your analytics logic (keep action creators clean)
- send analytics events to multiple targets (e.g. Google Analytics)
- easily create your own custom targets.
- easily create your own extensions for logging, and offline event collection
npm install --save redux-beacon
Rendux-Beacon provides a way to map your Redux or ngrx actions to analytics events. Once generated, Redux-Beacon sends the analytics events to a given target (e.g. Google Analytics).
Analytics events are defined in an event definition, and mapped to actions in an event definitions map:
// Event Definition
const pageView = {
eventFields: action => ({
hitType: 'pageview',
page: action.payload,
}),
};
// Event Definitions Map
const eventsMap = {
LOCATION_CHANGE: pageView,
}
With the above event definitions map, Redux-Beacon will create a
pageView
event whenever an action with type LOCATION_CHANGE
is
fired, then it will push the generated event to a given target
(e.g. Google Analytics).
Redux-Beacon provides prebuilt targets for some popular analytics services:
- Google Analytics
- Google Tag Manager
- Segment.io
- Amplitude
- (React Native) Google Analytics
- (React Native) Google Tag Manager
Check out the project site for API docs, tutorials, examples and more.