Implement custom Snowplow tracking faster with Snowtype
We are kicking off January with the public preview of Snowtype. Our new tracking code generation tool that allows you to implement custom Snowplow tracking faster and with greater accuracy avoiding the need to reprocess failed events.
To ensure that only high-quality data is loaded into your warehouse, Snowplow is based on a rigorous data contract between the tracking SDKs and the pipeline. Each event needs to conform to a schema defined in your schema registry.
This approach guarantees that all data in your warehouse is accurate and clean. However, this also means that previously, you would need to pay close attention to the instrumentation of your events - those that don't conform to the schema will be sent to a failed event storage bucket and will need to be manually reprocessed.
Introducing Snowtype, our new tracking code generation tool
With the introduction of Snowtype, we have closed the loop between the schema registry and tracking code. Snowtype is a command line interface (CLI) tool that can generate functions, typings and documentation within your application folder for your project's data structures and tracking scenarios based on a set of configuration options. The result is a more intuitive, developer-friendly and typed API that users can use in a variety of supported languages.
Previously, your code might have looked something like this:
Now with Snowtype it looks like this:
How to get started with Snowtype
The first version of Snowtype is available as a CLI package downloadable from npm and soon brew and supports the following languages on their available trackers: JavaScript, TypeScript, Node.js, Android (Kotlin), iOS (Swift) and Go. For more information on how to use the tool, please visit our documentation page.
If you run into any problems, have any questions or want to request a new feature please do sign up on Discourse and add your topic.
Snowtype is only available to our BDP customers and requires a valid Snowplow BDP Console API key to use the tool. To download the tool, run npm install @snowplow/snowtype</ in your terminal.