Snowplow is a scalable open-source platform for rich, high quality, low-latency data collection. It is designed to collect high quality, complete behavioral data for enterprise business.
To find out more, please check out the Snowplow website and our documentation.
The Snowplow JavaScript Trackers allow you to add analytics to your websites, web apps and Node.js applications when using a Snowplow pipeline.
With these trackers you can collect user event data (page views, e-commerce transactions etc) from the client-side and server-side tiers of your websites and web apps.
Technical documentation can be found for each tracker in our Documentation.
Technical Docs | Setup Guide |
---|---|
Technical Docs | Setup Guide |
Technical Docs | Setup Guide |
---|---|
Technical Docs | Setup Guide |
Technical Docs | Setup Guide |
---|---|
Technical Docs | Setup Guide |
Contributing |
---|
Contributing |
Assuming git, Node.js 18 - 20 are installed.
git clone https://github.com/snowplow/snowplow-javascript-tracker.git
To commit with safety in the repository, preventing sensitive key leakage, we use gitleaks. Gitleaks runs as a pre-commit hook making sure it can prevent accidental committing of sensitive data.
To install gitleaks, you can follow the getting started section on the repository.
For open source users before the update, you might need to re-run rush install
to update your git hooks from source.
SKIP=gitleaks
variable. e.g. SKIP=gitleaks git commit -m "Unsafe commit"
.
npm install -g @microsoft/rush
rush update
rush build
To run unit tests:
rush test
To run e2e browser tests (locally):
- Add
127.0.0.1 snowplow-js-tracker.local
to yourhosts
file:
cd trackers/javascript-tracker/
rushx test:e2e:local
Licensed and distributed under the BSD 3-Clause License (An OSI Approved License).
Copyright (c) 2022 Snowplow Analytics Ltd, 2010 Anthon Pang.
All rights reserved.