Skip to main content

Solutions Platform Integrations

Pipeline Overview

The solutions social data pipeline fetches live content from external platforms and writes static JSX data modules into snippets/data/social-feed-solutions/{product}/, plus shared feed modules under snippets/data/social-feeds/. These files are imported by product community pages under v2/solutions/{product}/.
External APIs (YouTube, Ghost, Discord, GitHub, RSS)


GitHub Actions workflows (scheduled cron)


Fetch scripts (.github/scripts/fetch-*.js)
        │  read product-social-config.json

Static JSX data files (snippets/data/social-feed-solutions/{product}/*.jsx + snippets/data/social-feeds/*.jsx)


React display components → MDX product pages
Each fetch script reads operations/scripts/config/product-social-config.json to determine which products have which channels configured, then writes per-product data files that are auto-committed by the workflow.

Secrets Required

These must be configured in GitHub Settings → Secrets and variables → Actions → Secrets.
SecretScriptWorkflowScheduleHow to Obtain
YOUTUBE_API_KEYfetch-youtube-data.jsupdate-youtube-data.ymlWeekly (Sun 00:00 UTC)Google Cloud Console — enable YouTube Data API v3
GHOST_CONTENT_API_KEYfetch-ghost-blog-data.jsupdate-ghost-blog-data.ymlDaily (00:00 UTC)Ghost Admin → Integrations → Custom integration → Content API Key. Instance: livepeer-studio.ghost.io
DISCORD_BOT_TOKENfetch-discord-announcements.jsupdate-discord-data.ymlDaily (01:00 UTC)Discord Developer Portal — create app → Bot → Token. Requires “Read Message History” permission in target announcements channels.
DOCS_V2Ghost blog + forum workflowsupdate-ghost-blog-data.yml, update-forum-data.ymlDailyGitHub Personal Access Token (Classic) with repo scope. Needed because GITHUB_TOKEN cannot trigger downstream workflows.
GITHUB_TOKENfetch-github-discussions.js, fetch-github-releases.jsupdate-github-data.ymlDaily (02:00 UTC)Auto-provided by GitHub Actions. No setup needed for CI. For local dev, create a fine-grained PAT with public repo read access.

RSS Blog Pipeline (No Secret Required)

ScriptWorkflowScheduleNotes
fetch-rss-blog-data.jsupdate-rss-blog-data.ymlDaily (03:00 UTC)Fetches public RSS feeds (Daydream Ghost RSS, Streamplace Leaflet RSS). No API key needed. Skips products that use the Ghost API script.

Products and Their Active Pipelines

ProductYouTubeBlogDiscordGitHub DiscussionsGitHub ReleasesForum
DaydreamOwn channel (needs YOUTUBE_API_KEY)Ghost RSS (no key)Needs DISCORD_BOT_TOKEN + channel IDs in configGraphQL (needs GITHUB_TOKEN)REST (needs GITHUB_TOKEN)
EmbodyNeeds manual Discord configNeeds verificationRESTLivepeer Forum (existing script)
FrameworksNeeds DISCORD_BOT_TOKEN + channel IDsGraphQL (0 posts currently)REST (active, 8 releases)Own Discourse + Livepeer Forum
Livepeer StudioShared channel (existing YOUTUBE_API_KEY)Ghost API (existing GHOST_CONTENT_API_KEY)Existing n8n → migrating to DISCORD_BOT_TOKENGraphQL (minimal)REST (active)Livepeer Forum (existing script)
StreamplaceLeaflet RSS (no key)Needs DISCORD_BOT_TOKEN + channel IDsGraphQL— (tags only)Livepeer Forum

Configuration

All fetch scripts read from a central config file:
operations/scripts/config/product-social-config.json
This file maps each product to its social channels (YouTube channel ID, Discord server/channel IDs, blog RSS URL, GitHub org/repo, forum URL). Scripts skip products where the relevant field is null or missing.

Setup Checklist for New Deployment

  1. Add YOUTUBE_API_KEY to GitHub Secrets
  2. Add GHOST_CONTENT_API_KEY to GitHub Secrets
  3. Add DISCORD_BOT_TOKEN to GitHub Secrets — invite bot to each product Discord with “Read Message History” permission
  4. Add DOCS_V2 PAT to GitHub Secrets (for auto-commit workflows)
  5. Verify product-social-config.json has correct channel IDs for each product
  6. Enable workflow dispatch on each update-*.yml and trigger a manual run to verify
  • docs-guide/repo-ops/config/.env.example — full repo env var reference (grouped by pipeline)
  • operations/scripts/config/product-social-config.json — central product social config
  • workspace/plan/active/SOLUTIONS-SOCIAL-DATA/plan.md — implementation plan
  • workspace/plan/active/SOLUTIONS-SOCIAL-DATA/_workspace/research/socials-research.md — research audit
  • docs-guide/features/data-integrations.mdx — broader data integrations map
Last modified on April 7, 2026