From 096ab434df2725bbbc36f81d4f0d80907fe3e642 Mon Sep 17 00:00:00 2001 From: Tom Gotsman Date: Thu, 28 May 2026 19:00:03 -0700 Subject: [PATCH 1/2] send newsletter to posthog --- .../blocks/telemetry/posthog.py | 11 +++++++++++ .../src/reflex_site_shared/backend/signup.py | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/packages/reflex-components-internal/src/reflex_components_internal/blocks/telemetry/posthog.py b/packages/reflex-components-internal/src/reflex_components_internal/blocks/telemetry/posthog.py index 0a0bc7c67fa..925668a9424 100644 --- a/packages/reflex-components-internal/src/reflex_components_internal/blocks/telemetry/posthog.py +++ b/packages/reflex-components-internal/src/reflex_components_internal/blocks/telemetry/posthog.py @@ -115,6 +115,17 @@ def track_intro_form_posthog_submission( ) +def track_newsletter_posthog_submission( + form_data: dict[str, Any], +) -> rx.event.EventSpec: + """Capture a newsletter_signup event in PostHog. + + Returns: + Event that runs PostHog identify and capture in the browser. + """ + return _track_form_posthog("newsletter_signup", form_data, _COMMON_KEYS) + + def get_posthog_trackers( project_id: str, api_host: str = POSTHOG_API_HOST, diff --git a/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py b/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py index 113690b58bf..372e3261afa 100644 --- a/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py +++ b/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py @@ -8,6 +8,9 @@ from email_validator import EmailNotValidError, ValidatedEmail, validate_email import reflex as rx +from reflex_components_internal.blocks.telemetry.posthog import ( + track_newsletter_posthog_submission, +) from reflex_site_shared.constants import ( API_BASE_URL_LOOPS, REFLEX_DEV_WEB_NEWSLETTER_FORM_WEBHOOK_URL, @@ -104,6 +107,7 @@ async def signup( return yield IndexState.send_contact_to_webhook(email) yield IndexState.add_contact_to_loops(email) + yield track_newsletter_posthog_submission({"email": email}) async with self: self.signed_up = True yield From 171ce167b002be3474f430d4cbfc856b136c1be5 Mon Sep 17 00:00:00 2001 From: Carlos Date: Fri, 29 May 2026 12:32:10 +0200 Subject: [PATCH 2/2] pre commit --- .../src/reflex_site_shared/backend/signup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py b/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py index 372e3261afa..224569bc7c6 100644 --- a/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py +++ b/packages/reflex-site-shared/src/reflex_site_shared/backend/signup.py @@ -6,11 +6,11 @@ import httpx from email_validator import EmailNotValidError, ValidatedEmail, validate_email - -import reflex as rx from reflex_components_internal.blocks.telemetry.posthog import ( track_newsletter_posthog_submission, ) + +import reflex as rx from reflex_site_shared.constants import ( API_BASE_URL_LOOPS, REFLEX_DEV_WEB_NEWSLETTER_FORM_WEBHOOK_URL,