Platform documentation
Architecture and product scope for investors and engineering teams.
Architecture
Platform
Delivery & commercial
Data ingestion
① Data collectors & schedulers
Collectors run on EventBridge / Cron schedules — hourly, daily, or monthly depending on volatility and use case. Each collector is an independent deployable; outputs land in S3 (raw) then flow through the pipeline to OLTP + OLAP.
② Collect → validate → normalize → save
Nothing writes directly to production catalog or ClickHouse without passing quality gates. Failed jobs retry or land in DLQ.
③ Storage tier — polyglot persistence
PostgreSQL for transactional truth (canonical entities, Hub, builders). ClickHouse for market analytics at scale (positioning, keywords, trends). MongoDB for high-write streaming chat. Redis for cache and presence.
| Store | Technology | What we store | Who reads / writes |
|---|
④ Market intelligence & analytics
ClickHouse powers market analysis — widget positioning history, keyword clusters, promotion trends, GEO comparisons. Analytics Service and Hub Insights query OLAP; builders get summarized APIs from PostgreSQL + pre-aggregated views.
⑤ Product consumers (builders & services)
Downstream systems never scrape directly — they consume Content Library API (canonical), Intelligence API (ClickHouse-backed), and Affiliate System commercial config.
⑥ Control plane — Calypra Hub, SSO & platform services
Single sign-on (OIDC), org tenancy, entitlements, billing, and service launch paths. GlobalSystem governs subscription catalog across products.
Platform infrastructure
Industry-aligned engineering patterns
Aligned with how event-driven commerce and content platforms are built (Kafka + PostgreSQL + Redis + outbox). Calypra BRDs specify queue-first orchestration between pipeline stages; the diagram below is the target platform topology — technology choices (e.g. Kafka vs managed queue) are implementation decisions on this model.
Observability & production operations
One observability plane on OpenSearch / Elasticsearch + Kibana: structured logs, pipeline health, and business metrics (scrape success, positioning trends, builder usage) — with environment-based alerting. No separate Prometheus/Grafana stack.
Sync vs async communication
content.released, retry/DLQ queues, analytics event firehoseCross-service integration matrix
Who talks to whom — from PLATFORM-SYSTEM-OVERVIEW.md
Product layer view
Horizontal layers
Design principles
Module pipeline pattern (Modules 1–4)
Each intelligence module decomposes into dedicated microservices per stage — not one monolithic scraper. Orchestrators own validation retries, translation QA, and release gates.
Business service contracts
Downstream products are entitlement-aware: Hub is the authorization source of truth; builders and commercial tools never bypass package limits. Affiliate System feeds monetization into Website Builder; News and modules 1–4 feed the content library.
Docs: PLATFORM-SYSTEM-OVERVIEW.md · service-docs/services-integration-overview.md · module BRDs · service-docs/client-area-service.md
app.calypra.com) composes independent Next.js microfrontends on a shared design system, and published customer properties (affiliate sites, news, streaming) ship via CloudFront + S3/SSR. SSO session flows from Portal into every entitled MFE; client telemetry lands in the same OpenSearch + Kibana plane as backend ops.
① Edge & CDN layer
Route 53 terminates DNS for Portal and white-label customer domains. CloudFront caches static MFE bundles, published site assets, and media. WAF and TLS at the edge protect both operator and public surfaces.
| Layer | AWS service | Role | Serves |
|---|
② Portal composition model
Signed-in operators land on the Calypra Portal shell. Marketplace and Project Center route into entitled services; the shell loads remote MFE entry points without a monolithic deploy.
③ Microfrontend architecture
Each product team owns a standalone Next.js app — built, versioned, and deployed independently. The Portal host resolves remotes via module federation / dynamic imports; Shared Platform packages are semver-pinned.
④ Domain microfrontends
Five product surfaces (plus optional AI Analytics) mount under the Services layer after Marketplace / Project Center subscription flows. Failure in one MFE does not take down the Portal shell.
⑤ Calypra Shared Platform
Cross-cutting UI, builder primitives, and SDK contracts — published as internal packages consumed by Portal and every MFE.
⑥ Published customer properties
Builders publish to customer-facing domains — separate CloudFront distributions per platform or shared multi-tenant edge with host-based routing. Static export (SSG) or SSR origin on EKS depending on product.
⑦ Auth & session (SSO → MFE)
OIDC login at Hub/SSO establishes a Portal session. The shell passes org context, entitlements, and short-lived API tokens to remotes — MFEs never implement their own login.
Platform infrastructure
Industry-aligned frontend patterns
Shell-and-remote composition, design-system governance, and edge-first delivery for high-traffic published sites — aligned with how multi-product SaaS platforms scale frontend teams.
Client observability
Browser RUM, Core Web Vitals, and product usage events feed OpenSearch + Kibana alongside backend logs — CloudFront access logs and real-user monitoring dashboards per MFE and published domain.
Runtime integration contracts
/services/affiliate-builder/… resolves shell + remote in one navigationWhy microfrontends
Technology stack
Portal surfaces
Design principles
Docs: docs_to present/fe-doc.html · PLATFORM-SYSTEM-OVERVIEW.md § control plane · calypra/service-hub/calypra-service-hub.md
Builder configuration — at a glance
Widget store & page composition
Operators curate a widget library per affiliate platform: register widgets, configure defaults, then drop them into page templates. Widgets bind to scraped JSON (bonus, game, casino, provider) and monetization slots from the Affiliate System.
Site layout & standard pages
Each platform configures global chrome (header, navigation, footer) and standard page types — including list, category, and single templates for games, casinos, and bonuses, plus marketing and legal pages.
Catalog & monetization controls
| Area | Operator actions |
|---|---|
| Game management | Enable / disable titles on the platform; assign a specific promo link per game where overrides are allowed. |
| Casino management | Enable / disable operators; set promo links and country-specific affiliate URLs per casino. |
| Provider management | Enable / disable providers shown in widgets and provider pages. |
Defaults flow from Affiliate System + scraped catalogs; builder overrides are per-platform and per-GEO.
SEO configuration
Meta title, description, canonical URL, and Open Graph fields per page template.
Page and section keyword fields mapped to templates and content blocks.
Auto-generated sitemap covering games, casinos, bonuses, and providers.
Shared keyword attributes applied across the full platform catalog.
Skinning, versioning & governance
Per-platform visual identity — theme tokens, component variants, and layout presets so each affiliate brand looks distinct on the same engine.
Track page and widget configuration versions — preview, publish to production, and roll back without breaking catalog bindings.
End-user management (site visitors)
Analytics configuration
Operators connect tracking in the builder — tags are injected on published pages and can be correlated with Calypra Analytics where integrated.
Global product & operator access
Service Hub / global product governs which customers can create platforms, which services are entitled, and which staff users may administer builder, Affiliate System, and analytics. Builder respects entitlements for widget packs, GEOs, and scraping feeds.
Platform integrations
Docs: service-docs/affiliate-website-builder-service.md
Product
Partners create and operate dedicated news properties (or news sections on hybrid affiliate sites): templates and domain setup, editorial workflows, AI-assisted creation from scratch or from scraped sources, localization, layout design, and analytics. Content moves through draft → review → publish with scheduling, versioning, and entitlement-aware access from the Service Hub.
Content formats
All types share one canonical news JSON schema and the same publishing pipeline; types can be extended without breaking the CMS.
Service capabilities
Core product areas that make up the News Service delivery surface (builder + ML + ingestion handoff + measurement).
Editorial & ingestion flow
Capability reference
Grouped product areas with full descriptions — mirrors the capability cards above.
Integrations
Success criteria
Docs: service-docs/news-service.md · Hub: calypra/service-hub/sections/ (Platforms → News Builder)
Product
The pipeline accepts casino URLs, discovers promotion pages, scrapes offer text and T&C, converts to a standardized bonus schema via AI, validates and retries on failure, translates with QA, runs plagiarism remediation and Google-oriented quality gates, then generates per-partner variants from original source + JSON only — never from another partner’s copy.
What we extract
Pipeline stages
Nine microservice stages — use Replay on the pipeline above to animate.
Pipeline components
Downstream products
Docs: module-1-bonus-scraper-brd.md · PLATFORM-SYSTEM-OVERVIEW.md (Module 1)
Product
Manage a configurable provider list, discover catalog and detail pages, extract metadata and media, convert to normalized game JSON, validate business rules, translate with quality checks, remediate plagiarism, pass Google-oriented gates, and emit partner variants from source + JSON only — accelerating provider onboarding across GEOs.
What we extract
Pipeline stages
Nine stages including partner-variant generation before release.
Pipeline components
Downstream products
Docs: module-2-games-ingestion-brd.md · PLATFORM-SYSTEM-OVERVIEW.md (Module 2)
Product
Batch and scheduled intake of casino sources, scrape core identity and descriptive content plus review-like signals, normalize via a casino-specific AI conversion service, validate against canonical schema with retry policy, translate and QA per language, generate partner rephrases (never chained from another partner’s variant), run plagiarism and Google quality checks, then write to DB with full audit trail.
What we extract
Pipeline stages
Nine stages ending in database persistence and release gate.
Pipeline components
Downstream products
Docs: module-3-casinos-ingestion-brd.md · PLATFORM-SYSTEM-OVERVIEW.md (Module 3)
Product
Geo-topic news ingestion registers sources per market, captures text and media with immutable raw snapshots, converts bundles to canonical news JSON, then runs validation, SEO metadata, keyword extraction, and plagiarism + cross-partner deduplication so each partner receives unique, publish-ready drafts — not duplicate wire copy.
Two data paths on the platform
Canonical output formats
Every ingested item maps to the same schema — types extend without breaking the pipeline.
Ingestion stages
Eight explicit stages — each backed by a dedicated pipeline service. Use Replay on the pipeline above to step through.
Pipeline components
Downstream products
Templates, domain, CMS, multi-format publish — open builder docs
Entitlements, fed-content packages, writer and reviewer roles per org
Engagement, SEO performance, keyword clusters, and content funnel ROI
Docs: service-docs/news-service.md · PLATFORM-SYSTEM-OVERVIEW.md (news ingestion parallel path)
Product
Operators configure their affiliate program inside Calypra: commission structures, promotion assets, and partner terms. Affiliates register on the operator’s branded affiliate portal (white label), receive tracking links, promo codes, and media, and promote the casino across their channels. All acquisition is attributed, reported, and settled through the program — while Affiliate Website Builder is how many affiliates build the sites that send traffic.
How the industry model maps to Calypra
Commission models
Standard iGaming deal types — configured per program, partner, or tier:
% of net gaming revenue from referred players for the lifetime (or agreed period) of the player.
Fixed payout per qualified acquisition (e.g. first deposit + wagering rules) — common for paid and performance partners.
Combination of upfront CPA plus ongoing RevShare, or tiered structures by volume or player value.
Promotion tools (what affiliates run)
Operators expose promotions affiliates attach to campaigns — typical toolkit:
Unique tracking URLs per affiliate (and often per campaign/sub-ID) for click → registration → deposit attribution.
Branded bonus or offer codes tied to the affiliate — used on landing pages, streams, and social posts.
Hosted creatives, HTML5, logos, and campaign kits; sometimes localized per market.
Where affiliates send traffic
Partners promote using their own mix of channels (program rules and GEO compliance apply):
Many affiliates build and operate sites with Affiliate Website Builder; the Affiliate System supplies monetization links, deals, and reporting — not the public site CMS.
Platform capabilities
Calypra stack position
Docs: service-docs/affiliate-system-service.md · service-docs/affiliate-website-builder-service.md
Product
The service targets gaming and iGaming audiences: live play, reviews, tournaments, influencer shows, and affiliate-driven streams. Customers register a streaming platform in Service Hub (Growth Stage 2–3), entitle Stream Builder, and operate channels and scheduled events with real-time engagement, optional ticketing, clips for social, and analytics fed into the Analytics Tool. Public viewers get a branded player experience; hosts and producers use builder and backstage tools for scheduling, publicity, attendees, and format-specific modes (single host through multi-speaker and show formats in later releases).
Who uses it
Release phases
Capability highlights
Capability reference
Calypra stack position
Docs: business_docs/content_plan_pnl/offerring.md · PLATFORM-SYSTEM-OVERVIEW.md · docs_to present/fe-doc.html (Stream Builder)
Conceptual model
Customers work organization-first. A platform is a customer property (affiliate site, news site, streaming); entitlements decide which Hub areas and downstream products are available.
Hub navigation (product IA)
Primary sidebar areas documented in calypra/service-hub/sections/ — 73 spec files across Home, Platforms, Organization, billing, analytics shell, and more.
Roles & permissions
Six predefined roles map to 48 hub.* permissions; admins can add custom access groups (no privilege escalation). Product surfaces may hide nav when the org lacks entitlement even if a permission exists.
What the Hub is not
Maps to platform services
Entry & public surface
app.calypra.com is the product entry (packages, product landings, sign-up, KYC) — not only login. Specs: app-home-page-spec.md, navigation-pages/, product-landing-pages-strategy.md.
Docs: calypra/service-hub/calypra-service-hub.md · hub-permissions-catalog.md · sections/README.md · service-docs/client-area-service.md
/hub/insights) is forward-looking — market priorities and opportunity signals. Both can feed an AI assistant that answers in natural language using warehouse + regional intelligence (Module 5, ingestion modules).
Product
The Analytics Tool is Calypra’s cross-platform intelligence layer: collect events from builders, Affiliate System, News, and ingestion pipelines; model KPIs in a warehouse; expose persona dashboards and AI-assisted Q&A for regional strategy — not just charts.
Platform layers
Data inputs
| Source | What Analytics receives |
|---|---|
| Affiliate Website Builder | Page views, widget impressions, click positions, promo link CTR, funnel steps |
| Affiliate System | Commission plans, vertical performance, partner monetization context |
| News Service | Publish events, engagement, SEO/content funnel metrics |
| Ingestion (Modules 1–4) | Bonus/game/casino/provider catalog signals, scrape freshness, quality gates |
| Promotion intelligence (Module 5) | Which games/themes are promoted where — trend history by GEO |
| Service Hub | Org/platform scope, entitlements, export permissions |
Hub analytics shell
Inside the Service Hub, /hub/analytics provides a sticky filter bar (date range, platforms, markets) and drill-down areas — KPI overview first, then detail tabs.
Persona dashboards (versioned)
Portfolio and brand performance across regulated markets.
Title-level promotion intelligence and affiliate demand signals.
Site-level monetization and content ROI.
AI-assisted examples (illustrative)
Customers (or internal strategy teams) can chat with the analytics AI scoped by market, persona, and time window. Answers combine warehouse metrics, ingestion intelligence, and regional research — with evidence timestamps where available.
Understand which game types perform in which regions before planning GTM or affiliate co-marketing.
Teams planning a new affiliate or operator-facing property can see where to start and what regulations, payments, and licenses matter.
Regional intelligence tie-in
Analytics sits on top of the Regional Intelligence and AI Workflow layer (per-region casino, game, promotion, and positioning data from scraping + Module 5). That powers both dashboards and conversational answers — aligned with market research on launch GEOs (market-research-casino-affiliate-regions.md).
Success criteria
Docs: service-docs/analytics-tool-service.md · calypra/service-hub/sections/analytics/ · calypra/service-hub/sections/insights/ · market-research-casino-affiliate-regions.md · business_docs/content_plan_pnl/offerring.md (Module 5, regional intelligence)