Wildberry Princess
-- "I found this note stabbed to my door! ... man."
Wildberry Princess is a JavaScript library for abstracting out Google Analytics (analytics.js), KissMetrics, Segment.io, FullStory, Customer.io and perhaps other analytics platforms in the future.
Usage
// Google Analytics initialized somewhere...// Kissmetrics initialized somewhere...// Segment.io initialized somewhere...// FullStory initialized somewhere...// Customer.io initialized somewhere... // Setupconst analytics = useGoogleAnalytics: true useKissMetrics: false; // Set dimensions and users.if current_user_id != null analytics; if app_id != null analytics; // Track user actions, specifically clicks, where the label is the text content (button, div, tab, etc.) or form input name (input, select, textarea).// analytics.trackUserActions(selector, category, action, label, value)analytics;analytics;analytics; // Send events anywhere, like Backbone model actions.// analytics.trackEvent(category, action, label, value)analytics; // Track page views. Currently// NOTE: KissMetrics is not included here to avoid event bloat 🤑apptentiveanalytics; // Send eCommerce data.const transaction_id = `_`;const transaction = id: transaction_id affiliation: 'Candy Kingdom' revenue: price shipping: '0' tax: '0';const item = id: transaction_id name category price quantity: 1; analytics;analytics;analytics;analytics;
For more advanced use, please refer to the source.
Testing
npm run lintnpm run makenpm run testnpm run reportnpm run make-dist-min
Useful Reading
Google Analytics
- Analytics.js Field Reference
- Cookies and User Identification
- Custom Dimensions and Metrics
- Event Tracking
Segment.io
Customer.io
Contributors
- Owen Kim - Segment.io Support
- Democritos Tsellos - FullStory Custom Fields
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request