Skip to content

Conversation

jborlase-snowplow
Copy link
Contributor

No description provided.

@jborlase-snowplow jborlase-snowplow added the do not merge Flag to denote a Issue or PR which should not yet be merged (usually pending a release) label Jun 15, 2025
Copy link

netlify bot commented Jun 15, 2025

Deploy Preview for snowplow-docs ready!

Name Link
🔨 Latest commit dbb37c8
🔍 Latest deploy log https://app.netlify.com/projects/snowplow-docs/deploys/685bcef1d21fba0008058848
😎 Deploy Preview https://deploy-preview-1284--snowplow-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@jborlase-snowplow jborlase-snowplow marked this pull request as draft June 15, 2025 12:58
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces a new tutorial accelerator for building a real-time personalization system with Snowplow Signals on a newspaper website example.

  • Adds step-by-step guides for Snowplow event tracking, defining Signals attributes/views, and integrating real-time recommendations.
  • Provides metadata, architectural overview, and sample JSON/Python/Node code snippets.

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tutorials/signals-real-time-media-personalisation/meta.json Defines tutorial metadata (title, label, description)
tutorials/signals-real-time-media-personalisation/intro.md Overview and architecture diagram for the tutorial
tutorials/signals-real-time-media-personalisation/snowplow-tracking.md Guide to setting up Snowplow tracking and JSON schema
tutorials/signals-real-time-media-personalisation/define-attributes-and-views.md Instructions to install SDK and define Signals attributes, views, and services
tutorials/signals-real-time-media-personalisation/creating-real-time-recommendations.md NextJS example for retrieving Signals attributes and generating recommendations
Comments suppressed due to low confidence (4)

tutorials/signals-real-time-media-personalisation/snowplow-tracking.md:17

  • [nitpick] Grammar: add the missing article and use lowercase for consistency: "create a data structure with the following JSON schema:"
If you would like to follow along, you can create Data Structure with the following JSON schema:

tutorials/signals-real-time-media-personalisation/meta.json:4

  • [nitpick] Wording: the word "using" is repeated. Consider rephrasing to remove duplication, for example: "How to build a real-time recommendation system with Snowplow Signals on a newspaper website."
"description": "How to build a real-time recommendation system using Snowplow Signals using a Newspaper website as an example."

tutorials/signals-real-time-media-personalisation/snowplow-tracking.md:21

  • The $schema field is using markdown link syntax instead of a plain URL. It should be a raw string, e.g., "http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#" to produce valid JSON.
"$schema": "[http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#](http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#)",

tutorials/signals-real-time-media-personalisation/creating-real-time-recommendations.md:108

  • The variable articles_read is not defined in this snippet. You should ensure it is declared or replace it with the correct identifier (e.g., a list of previously read slugs).
let recommendedArticles = articles.filter((article) => interests.includes(article.category) && !articles_read.includes(article.slug))

)
```

Lets breakdown what that code does:
Copy link
Preview

Copilot AI Jun 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in the explanatory text: it says "Lets breakdown" above the list. It should read "Let's break down" for correct grammar.

Suggested change
Lets breakdown what that code does:
Let's break down what that code does:

Copilot uses AI. Check for mistakes.

const business_articles_read = attributes['article_category_business_read_count']?.[0] ?? 0;
const ai_articles_read = (attributes['article_category_ai_read_count']?.[0] ?? 0);
const data_articles_read = (attributes['article_category_data_read_count']?.[0] ?? 0);
const technlogy_articles_read = (attributes['article_category_technology_read_count']?.[0] ?? 0);
Copy link
Preview

Copilot AI Jun 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Variable name typo: "technlogy_articles_read" should be spelled "technology_articles_read" to match the attribute key.

Suggested change
const technlogy_articles_read = (attributes['article_category_technology_read_count']?.[0] ?? 0);
const technology_articles_read = (attributes['article_category_technology_read_count']?.[0] ?? 0);

Copilot uses AI. Check for mistakes.

@mscwilson mscwilson changed the base branch from main to add-signals-docs August 19, 2025 12:40
@johnmicahreid
Copy link
Contributor

@mscwilson can we add this to the 1197 PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla:yes do not merge Flag to denote a Issue or PR which should not yet be merged (usually pending a release)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants