Version 0.9.4 Release 🎉
Customer experience digital data layer polyfill. Applying lessons learned by many implementations of Customer Experience Digital Data Layer and bringing this back into a specification that browser vendors can implement.
Increasingly, multiple groups are involved in the data collection process for a given digital property, and each has a solution to be implemented on the page. Page design has become more complex and development cycles have lengthened. As a result when you look inside your Tag Manager chances are high that you see a chaos of different marketing tags. All your data is collected from different locations in your application. There is no order, integrity and consistency. No control and overview over events and data flows. Customer Experience Digital Data Layer ames to align your data into a single unidirectional data stream. To create a small(in browser) modular, independant and decoupled datalayer for improving web tracking, website personalization and DMP implementations.
The goals of this polyfill include:
- Expanding the accessibility, quality of dynamic data inside a DDL that may be supplied by the author
- Apply lessons learnt by implementations of Customer Experience Digital Data Layer 1.0
The schema to support this standard has been designed to be a minimal extention of DOM and Web API's.
Install with npm:
npm install @ceddl/ceddl-polyfill
CEDDL-polyfill - Bridging the gap between the spec and the browsers<!-- ... -->
Minimal ceddl model:
var mf = ceddlmodelFactory;mf;ceddl;});
Open ceddl development app
npm install npm run dev
Run the unit testing
npm install npm run test
Increased data quallity
While software vendors do an increasingly good job at processing Big Data, some errors are not always caught gracefully before they end up on a dashboard or report. The ability to catch data issue's before they end up on a live server can be invaluable to your business. ceddl-polyfill makes it possible to define the data structure you expect your site to produce. Just like defining a table in a database. It will validate the data stream in the development process and reporte while testing your analytics suite.
Having a unidirectional data stream means that all data in to your analytics follows the same lifecycle pattern, making the logic more predictable and easier to understand. It also encourages data normalization, so that you don't end up with multiple, independent copies of the same data that are unaware of one another.
Solves Timing issues
If you have some experience with web analytics you are likely to have encountered timing errors. A website loading is not static. It loads files, content and data depending on user input or api calls. If you look at it from this angle you could imagine a web page as a time line of events. Events have become a major part of ceddl. It makes it possible to listen for data, updating your analytics as soon as data is available.
Facilitate A/B testing and personalization
We use an EventBus that allows publish-subscribe-style communication between components without requiring the components to explicitly register with one another (and thus be aware of each other).
Easy data exchange between 3rd-party scripts
The EventBus enables 3rd-party scripts to communicate without a chance of creating errors while transferring the data. The eventbus makes it possible to upgrade 3rd-party scripts interdependently.
Vendor independent with easy migration path
Replace any third-party system to another or run A/B test between them? Vendor migration will take you no more than 5 minutes. No change on the site server is required since all data stream is done through a standardized data layer.
ceddl-polyfill is MIT licensed
The ceddl-polyfill documentation and logos (e.g., .md, .png, .sketch) files in the /demo, /docs and /assets folder) is Creative Commons licensed.