8000 Adding Signals Real-time personalisation accelerator by jborlase-snowplow · Pull Request #1284 · snowplow/documentation · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Adding Signals Real-time personalisation accelerator #1284

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

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 8000 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.

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.

2 participants
0