SRS: Marketing Website — Trading SEO Pages (UC 1.7)
| Field | Value |
|---|---|
| BA in Charge / Author | Anh Hoang / Antigravity |
| Date Created | 2026-07-26 |
| Version | v1 |
| Document References | RFQ_ Website and Dashboard Implementation V7.pdf; line 96-104, 117-126 (Global Header Trading dropdown; Template System#05 "Market Vertical"); StackTrading_Technical_Proposal_v2.4.docx.md; line 59, 97, 117, 228 (Futures 1 approved add-on frame; shared Sanity.io template scope; Sanity.io collections); WBS rows 17-19 (UC_1.7.1 Futures = row 17; UC_1.7.2 Forex = row 18; UC_1.7.3 Crypto/UC_1.7.4 News & Events/UC_1.7.5 Scalping/UC_1.7.6 Swing Trading all map to the single generic WBS row 19 "SEO Landing Page Template", per user-confirmed decision to keep 6 separate UCs while all still tracing to the same WBS row for the 4 template-only verticals); docs/BA/UC_1.1-1.9/UC_1.7/QnA_init_docs.md (A-01..A-20); Wireframes: References/Wireframe/Marketing website/Trading SEO pages/ |
UC Index
| UC_ID | Use Case Name | Business Description |
|---|---|---|
| UC_1.7.1 | Futures Trading Page (Sanity Template + Chart Frame) | Visitor navigates to/trading/futures → sees SEO landing page about Futures trading, built from the shared Sanity CMS flexible template (Ref: A-17), with one additional Sanity-configured chart/technical-pitch frame (F5b, Ref: A-20) not present on the other verticals. |
| UC_1.7.2 | Forex Trading Page (Sanity Template) | Visitor navigates to/trading/forex → sees SEO landing page about Forex trading, built from the shared Sanity CMS flexible template. |
| UC_1.7.3 | Crypto Trading Page (Coming Soon) | Visitor navigates to/trading/crypto → sees a hardcoded "Coming Soon" page, since no Crypto content exists in Sanity yet. |
| UC_1.7.4 | News & Events Page (Sanity Template) | Visitor navigates to/trading/news → sees SEO landing page about News & Events trading strategy, built from the shared Sanity CMS flexible template. |
| UC_1.7.5 | Scalping Page (Sanity Template) | Visitor navigates to/trading/scalping → sees SEO landing page about Scalping strategy, built from the shared Sanity CMS flexible template. |
| UC_1.7.6 | Swing Trading Page (Sanity Template) | Visitor navigates to/trading/swing → sees SEO landing page about Swing Trading strategy, built from the shared Sanity CMS flexible template. |
Changelog
| Date | Version | Updated item | Before | After | Notes |
|---|---|---|---|---|---|
| 2026-07-26 | v1 | Initial creation | — | Created SRS for UC_1.7.1–UC_1.7.6 (Trading SEO Pages: Futures, Forex, Crypto, News, Scalping, Swing) | User request 2026-07-26; ran Auditor → Challenger → Architect chain persystem_init_workflow.md |
| 2026-07-27 | v1 | Assumptions (all[ASSUMPTION]/[BLOCKER] markers, A-06 to A-25); Motion fields; Trustpilot section; Business Rule sections; §9 Wireframe sections | Open assumptions across Shared Architecture + UC_1.7.1–UC_1.7.6; motion fields undocumented as Sanity vs. fixed; Trustpilot score section had no endpoint reference; Business Rule sections mixed mechanism/schema content with empty-data and motion rules; §9 Wireframe sections carried "Update"/"Blocker" blockquotes | All assumptions resolved in place ([Resolved]/[Resolved — A-xx]); NY4 motion reference link attached to Forex/News/Scalping/Swing NY4 diagram + Firm Logos Strip rows; Futures CME Level 2/DOM ("Stop Trading Blind") chart section given its own motion reference link; Trustpilot section given an endpoint-reference table (v7_full.txt line 2445-2451) plus a Zapier cross-check note; Business Rule sections (Shared Architecture + BR-12 through BR-17) trimmed to contain only two rule types — empty-data display behavior and motion-change lockstep (motion changes require the paired reference frame/clip to be updated; Sanity content changes auto-publish without further action) — mechanism/schema descriptions moved to §10 or the shared architecture sections; §9 Wireframe sections reduced to the wireframe link bullet only, all "Update"/"Blocker" blockquotes removed | User request 2026-07-27 (Vietnamese instruction: resolve assumptions, attach 2 Drive motion links, add Trustpilot endpoint reference from Zapier doc, restrict Business Rule scope to empty-data + motion-lockstep only, trim §9 Wireframe to link-only) |
| 2026-07-30 | v1.1 | Trustpilot TrustScore — Live API Field (endpoint table row 1, Field Name row 1) | No fetch-timing/fallback detail; description implied the score "updates automatically" as Trustpilot's score changes | Added explicit fetch-timing rule: no real-time/push listener, fetched on page load only, cached response reusable up to 60 minutes, requires manual reload to see a changed score; classified the score/count badge as a required component with hide-or-keep-last-cached-value fallback on proxy failure | Ref: Slack thread (Adam Culver/Adrian) + QnA_TRUSTPILOT_UIUX.md TP-A11/TP-A15 |
Glossary
For all shared project terminology, please refer to the single source of truth: Project Glossary.
Shared Architecture: Global Header Trading Dropdown
All 6 pages in this module are entry points reachable from the Global Header "TRADING" dropdown (Source: dashboard_v7_full.txt, line 91-104), which is split into 2 columns:
- Column 1 — Markets (Personas): Futures Traders, Forex Traders, Crypto Traders
- Column 2 — Strategies (Use Cases): News & Events, Scalping, Swing Trading
This dropdown structure is part of the Global Layout header (UC_01) and is not re-described in full here; refer to the UC_01 SRS (not yet authored — see WBS row 2) for general header dropdown interaction behavior (hover/click open, keyboard nav, mobile collapse). This document covers only the destination pages.
Sanity Page Configuration Fields (common to every page — UC_1.7.1 through UC_1.7.6)
[Resolved — A-09] In addition to the per-frame body content below, every page document in this module carries the standard Sanity page-level metadata fields used to identify, publish, and SEO-tag the page itself (independent of which vertical's content it holds). No Sanity Studio schema file was supplied to confirm exact field names — the table below is confirmed as the standard CMS page-metadata shape for this module, following the standard Sanity page pattern used elsewhere in the project.
| No. | Field Name | Field Type | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | Page Name | Text | Required. Used to identify the page in CMS only. Not displayed on the website. |
| 2 | URL Slug | Text | Required. Must be unique. Used to generate the page URL (e.g./trading/forex). |
| 3 | Status | Dropdown | Available values: Draft, Published. Only Published pages are rendered on the website. |
| 4 | SEO Title | Text | Required. Used as the browser title and SEO metadata. |
| 5 | SEO Description | Text Area | Optional. Used as the meta description. |
| 6 | OG Image | Image | Optional. Used when sharing the page on social media. |
| 7 | Canonical URL | URL | Optional. Must be a valid URL. |
Button Link Field — Shared Destination Model (applies to every CTA button — UC_1.7.1 through UC_1.7.6)
[Update — supersedes the removed § CTA Button Destination Rules, per explicit user instruction] Every CTA button in this module (F2 Hero buttons, F9 Final CTA button) is built from one shared Button Link field structure. The content editor picks a destination type per button instance — the destination is no longer inferred from the button's label/purpose (the old "How it works" vs. "Get Started" fixed-behavior split is retired).
| No. | Field Name | Field Type | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | Button Label | Text | Required. Editable text (Sanitystring) shown on the button. |
| 2 | Destination Type | Dropdown | Required. Available values:URL (navigate to another page or external link), Frame (jump to a specific frame/section within the current page — in-page anchor scroll, no route change). |
| 3 | Target Frame | Dropdown | Required when Destination Type = Frame. Available values = the frames present on the current page (F2 Hero, F3 Firm Logos Strip, F4 Stats/Trust Bar, F5 Content Blocks, F6 How It Works Steps, F7 Comparison Block, F8 FAQ, F9 Final CTA). Behaviour: smooth-scroll anchor to the selected frame, no route change. Hidden/ignored when Destination Type ≠ Frame. |
| 4 | Target URL | URL | Required when Destination Type = URL. Must be a valid URL (Sanityurl, URL-format validated). Hidden/ignored when Destination Type ≠ URL. Tab behaviour (shared rule, inherited by every button using Destination Type = URL): internal URLs (same-domain Next.js routes — e.g. another Trading SEO page, Checkout) open in the same tab; external URLs (different domain — e.g. Trustpilot, social channels) open in a new tab (target="_blank"). Checkout exception note: if a Target URL routes to Checkout (e.g. an editor-labelled "Start Associate Track" / "Begin Evaluation" CTA), it must always open in the same tab regardless of domain classification — per client-confirmed decision (Source: QnA_STAGE1_CHECKOUT_ONBOARDING.md, STAGE1-056, Adrian Stack, Slack, 2026-07-26): forcing a new tab breaks the browser back button and disorients mobile users, causing drop-off. |
This Button Link structure applies identically everywhere a button appears in this module — the F2 and F9 rows in § Sanity Field Editability — by Layout Section below reference this section instead of repeating the toggle logic. Individual buttons below that are clearly internal or external may still carry a short inline "(same tab)" / "(new tab)" annotation for clarity, though this is not required to repeat the shared rule above.
Motion Field — Shared Motion Selector (applies to every frame/component — UC_1.7.1 through UC_1.7.6)
[Update — generalizes the previously hardcoded motions, per explicit user instruction] Every layout section/component in this module (the S1-S14 catalog for UC_1.7.2/UC_1.7.4/UC_1.7.5/UC_1.7.6, Ref: A-21; and UC_1.7.1's own section catalog, Ref: A-25) carries its own Motion field, letting the content editor choose that component's entrance/display animation from a fixed, developer-provided list — rather than the animation being frontend-fixed per component. Two exceptions to this general rule are documented immediately below (Firm Logos Strip, NY4 Infrastructure Diagram — Ref: A-23), which remain fixed/hardcoded and do not expose this dropdown.
| No. | Field Name | Field Type | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | Motion | Dropdown | Optional (defaults to "None" if not set). Available values:None, Fade In, Slide Up, Marquee Scroll (continuous), Parallax Scroll, Interactive / Animated. Applied to that component's container on render; changing the value does not require a code deploy. |
Fixed-Motion Exceptions (not Sanity-configurable)
[Update — A-23, per explicit user instruction, narrows the general rule above] Two components use a motion that is fixed/hardcoded in the frontend and do not expose the shared Motion dropdown to content editors — the animation itself cannot be changed via Sanity, only the underlying content (logo set, diagram copy) can be:
| No. | Component | Fixed Motion | Scope / Notes |
|---|---|---|---|
| 1 | Firm Logos Strip (F3, part of Trust & Credibility Strip) | Autovertical scrolling (continuous, always on) | Confirmed by explicit user instruction for Forex (UC_1.7.2), News & Events (UC_1.7.4), and Scalping (UC_1.7.5).[Resolved] Also applies identically to Futures (UC_1.7.1, own layout — see §10) and Swing Trading (UC_1.7.6, no wireframe) — it is visually the same shared component on every wireframe inspected. This corrects the prior wording in BR-1.7.1-04/BR-1.7.2-01 area that described this motion as Sanity-configurable via the shared Motion field — that framing is superseded by this exception. |
| 2 | NY4 Infrastructure Diagram (F7) | Fixed, component-specific — reference:Motion clip (NY4) | Confirmed by explicit user instruction. The diagram's own display motion is fixed per component and does not use this shared Motion dropdown. Applies to the Forex screen (UC_1.7.2) and every screen using the Forex-template layout (UC_1.7.4/UC_1.7.5/UC_1.7.6).[Business Rule] The motion itself must not be changed independently of its reference asset — if the motion changes, the associated frame/reference clip above must be updated to match. Content (diagram copy, node labels, spec line) is Sanity-driven and publishes automatically without a code deploy; the motion animation itself does not. |
All other frames/components not listed in this table continue to use the general Sanity-configurable Motion field described above (e.g., the Futures chart/data comparison block, Ref: BR-1.7.1-05, retains an editor-selectable motion — it is not a fixed exception).
Trustpilot TrustScore — Live API Field (Not Sanity Content — applies to UC_1.7.1, UC_1.7.2, UC_1.7.4, UC_1.7.5, UC_1.7.6)
Endpoint reference (call detail):
| No. | Endpoint | Method | Input | Output | Behaviour |
|---|---|---|---|---|---|
| 1 | /community/trustpilot-stats | GET | None | { "score": float, "review_count": int } | Proxy endpoint — middleware calls the Trustpilot API using the stored Business Unit ID (BUID); result cached 60 minutes. (Ref:v7_full.txt line 2445-2451). Fetch timing: there is no real-time/push listener — the frontend calls this endpoint only on page load, and the middleware may serve a cached response for up to 60 minutes before re-fetching from Trustpilot. A visitor who keeps a page open will not see the score/count change without reloading (F5). This is a required component: on proxy failure, the badge hides itself or keeps showing the last cached score/count — never a broken or empty state. (Ref: Slack thread (Adam Culver/Adrian) + QnA_TRUSTPILOT_UIUX.md TP-A11/TP-A15) |
Note on Zapier reference sheet (zapier_v7_full.txt): this specific score-fetch endpoint is not itself a Zapier-triggered flow — it is a direct backend proxy call, confirmed by cross-checking the Zapier automation reference sheet (zapier_v7_full.txt), which only shows Trustpilot appearing inside Flow 2 (Challenge success, line 1054) and Flow 5 (Payout, line 1544-1552) as a POST /community/trigger-review-invite action step — a separate endpoint that sends review invitations, not the one that fetches the score. No Zapier Flow/Table calls GET /community/trustpilot-stats.
| No. | Field Name | Field Type / Source | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | Trustpilot Score | Live API (not Sanity) | Not editable in Sanity. Rendered from the cached response ofGET /community/trustpilot-stats (Ref: v7_full.txt line 2445-2451). No content-editor or code action needed to reflect a new Trustpilot score, but there is no real-time update on an open page — the value is only re-fetched on page load, reusing a cached result for up to 60 minutes; a visitor must reload the page to see a changed score. |
| 2 | Trustpilot Review Count | Live API (not Sanity) | Same source/behaviour as row 1 (review_count field of the same API response). [Resolved] Shown only in the Global Footer badge, by design — the Hero/Trust Strip badge is a compact variant showing score only, and intentionally omits the review count. |
| 3 | Trustpilot Widget Placement | Layout (frontend-fixed) | The badge appears twice per page — Hero/Trust & Credibility Strip (F3) and Global Footer (F14). Placement itself is frontend-fixed, not Sanity-configurable. |
| 4 | Trustpilot Widget Click Target | Layout (frontend-fixed) | Clicking either badge (F3 or F14) redirects to the external Trustpilot profile (https://www.trustpilot.com/review/stacktrading.com) and opens in a new tab (target="_blank"), preserving the current browser session — consistent with the general external-URL rule in § Button Link Field — Shared Destination Model above and with the Footer widget behaviour documented in UC_1.1.1 §6/BR_1.1.1.3. |
This field applies identically on UC_1.7.1 (Futures, own layout — see §10) and UC_1.7.2/UC_1.7.4/UC_1.7.5/UC_1.7.6 (shared template — see § Sanity Field Editability F3/F14 rows below).
Sanity Field Editability — by Layout Section (applies to UC_1.7.2, UC_1.7.4, UC_1.7.5, UC_1.7.6 — Futures/UC_1.7.1 has its own distinct layout, see § 10 in the UC_1.7.1 section below)
S1. Global Header — see UC_01 (not re-described here).
| No. | Field Name | Field Type | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | S2 – Hero Heading | Text | Required. Single-line plain text (Sanitystring). Displayed as the page's main heading. No motion, no button. |
| 2 | S2 – Hero Subheading | Text Area | Optional. Supporting text under the heading (Sanitytext, or block content if bold/link formatting is needed). |
| 3 | S2 – Hero Image | Image | Required. Asset upload with hotspot/crop enabled (Sanityimage); alt text sub-field required for accessibility. |
| 4 | S2 – Hero CTA Button(s) | Button (Label + Link) | Optional (present per vertical's approved wireframe, Ref: §9); up to 2 buttons per wireframe. Each button uses the sharedButton Link structure — see § Button Link Field — Shared Destination Model above. No per-button Motion field (motion applies at the section level, per rows below). |
| 5 | S3 – Trustpilot Badge (Hero Trust Strip) | Live API (not Sanity) | Directly below the Hero, a compact "TrustScore" badge.Not Sanity content — see § Trustpilot TrustScore — Live API Field above. Not editable by content editors. |
| 6 | S3 – Firm Logos Strip | Image (Array), Motionfixed | Same row/strip as row 5, alongside the Trustpilot badge. Array of logo images (one per firm), each with requiredalt text. Logo set is Sanity-editable (add/remove/reorder), but its auto-vertical-scrolling motion is fixed/hardcoded, not Sanity-configurable — see § Fixed-Motion Exceptions above (corrects the prior "Sanity-configurable via Motion field" wording). |
| 7 | S4 – Regulatory Disclaimer | Text Area | Optional. Short compliance/risk-disclosure text rendered as a slim banner/bar below the trust strip. Read-only, no image, no motion, no button.Display rule: if left empty, the banner/bar does not render (no empty bar shown). |
| 8 | S5 – Feature Cards | Array (Image/Icon + Title + Body) + Motion | Required (at least 1). Repeating card-style content section (replaces the old generic "F5 – Content Blocks" description with the confirmed card layout). Each card:Card Icon/Image (Image, optional) + Card Title (Text) + Card Body (Text Area). Editors add/remove/reorder cards freely; count not hardcoded. Display animation is Sanity-configurable via the shared. Display rule: if no cards are configured, the section does not render. |
| 9 | S6 – Careers / 3-Step Section | Array (Icon + Title + Body), 3 items | Optional. A 3-card step-style section positioned after the Feature Cards and before the NY4 diagram. Each step:Step Icon/Image (Image, optional) + Step Title (Text) + Step Body (Text Area). Display rule: if left empty, the section does not render. |
| 10 | S7 – NY4 Infrastructure Diagram | Diagram (Image or structured nodes), Motionfixed | New section, not previously documented. See§ NY4 Infrastructure Diagram Field below for the full field breakdown. Motion is fixed/hardcoded per component — see § Fixed-Motion Exceptions above. |
| 11 | S8 – Spec / Feature Table | Array (Label + Value) | Optional. Tabular row list (e.g., spec name + value pairs) positioned after the NY4 diagram. Each row:Label (Text) + Value (Text). Read-only, no image, no motion, no button. |
| 12 | S9 – Persona Tabs | Array (Tab Label + Body) + Button | Optional. A tabbed content switcher (click a persona label to swap the body content below it). Each tab:Tab Label (Text) + Tab Body (Text Area) + optional Tab CTA Button (shared Button Link structure). Tab-switching interaction itself is frontend-fixed, not Sanity-configurable — only the tab count/labels/content are editor-driven. |
| 13 | S10 – Comparison Table | Array (Label + Description + Icon) | Optional. Comparison/differentiator content (table or card layout). Each row:Label (Text) + Description (Text Area) + Icon/Image (Image, optional). Read-only, no motion, no button. |
| 14 | S11 – Ecosystem Section | Array (Logo/Image + Title + Body) | Optional. Partner/platform-ecosystem showcase section. Each item:Logo/Image (Image, required, with alt) + Title (Text) + Body (Text Area, optional). No motion, no button. |
| 15 | S12 – FAQ Items | Array (Question + Answer) | Required (at least 1). Each item:Question (Text) + Answer (Text Area). Behaviour: click a question row → expands to show the answer; click again → collapses. Accordion interaction itself is frontend-fixed, not Sanity-configurable. |
| 16 | S13 – Final CTA Heading | Text | Optional. Heading text above the final CTA button. |
| 17 | S13 – Final CTA Button | Button (Label + Link) | Required. Uses the sharedButton Link structure — see § Button Link Field — Shared Destination Model above. Destination is fully editor-configured per instance. |
| 18 | S14 – Footer Trustpilot Badge + Count | Live API (not Sanity) | In the Global Footer, a second, fuller "TrustScore · [count] reviews" badge alongside a repeat of the Firm Logos Strip. Not Sanity content — see§ Trustpilot TrustScore — Live API Field above. |
| 19 | S14 – Footer Firm Logos Strip | Image (Array), Motionfixed | Same fixed/hardcoded auto-vertical-scroll motion as row 6 above — see§ Fixed-Motion Exceptions above. |
S14 (Global Footer container) — see UC_01 (not re-described here); S14 rows above are the Trustpilot/logo content nested inside it, specific to this page family.
UC_1.7.1 — Futures Trading Page
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.1 |
| Use Case | Futures Trading Page |
| Description | Visitor navigates to/trading/futures and sees the SEO landing page about Futures trading, built from its own distinct Sanity CMS layout (Ref: A-25; distinct from the shared UC_1.7.2/UC_1.7.4/UC_1.7.5/UC_1.7.6 template). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 17 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/futures route via one of two entry points:
- Direct URL entry, or clicking "Futures Traders" under the "Markets" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route).
- Clicking the
Learn Morebutton under the "Futures Traders" market card in the Homepage's "Built for Your Market" section — UC_1.3.1 §5 "Built for Your Market" — opens in the same tab (internal route). - Clicking "Futures" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
4. Post-conditions
- The Futures Trading Page is rendered with its own distinct section set — Hero, Problem-vs-Solution cards, Platform Ecosystem row, CME Level 2/DOM comparison, persona tabs, spec table, FAQ, and CTA content — currently published in Sanity for this vertical.
5. Basic Flow
- The visitor clicks "Futures Traders" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/futures. - The system displays the full Futures Trading Page configured on Sanity CMS, per its own distinct layout (Ref: § 10 below).
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
(Section-catalog/mechanism details for Futures — layout scope, per-section field shapes, etc. — are documented in §10 below, not repeated here. This section lists only the two rule types that apply: empty-data display behavior, and motion-change lockstep.)
BR-1.7.1-04: Firm Logos Strip Motion — Fixed, Not Independently Changeable
Fixed/hardcoded auto-vertical-scrolling motion (Ref: § Fixed-Motion Exceptions above) — not Sanity-configurable, cannot be changed without a code deploy. The logo set itself remains Sanity-driven; if the logo array is empty, the strip does not render (Ref: §10 row 3).
BR-1.7.1-05: CME Level 2 / DOM Comparison Motion — Reference-Locked
Motion reference: the transition/reveal animation between the "Basic Chart" and "Level 2 DOM" states follows a motion pattern similar to this reference clip: Motion clip (chart / stop trading blind). Business Rule: this motion must not be changed independently of its reference — any change to the animation requires the associated reference clip/frame above to be updated to match. The chart image/caption content itself is Sanity-driven and publishes automatically on publish, without a code deploy.
9. Wireframe / UI
- Screen: Futures Trading Page — Trading Template Page Futures.png
10. Screen Description and Business Rules
| No. | Field Name | Field Type | Validation / Behaviour Rule |
|---|---|---|---|
| 1 | Hero Heading / Subheading / Image / CTA(s) | Text / Text Area / Image / Button | Same field shapes as S2 in the shared table above (Text heading, Text Area subheading, Image withalt, up to 2 shared-Button-Link CTAs). No motion on the Hero itself. |
| 2 | Problem-vs-Solution Cards | Object pair (Title + Body + Icon, x2) | Two cards:Problem Title (Text) + Problem Body (Text Area) + optional Problem Icon (Image); Solution Title (Text) + Solution Body (Text Area) + optional Solution Icon (Image). No button. |
| 3 | Firm Logos Strip (Ref: BR-1.7.1-04) | Image (Array), Motionfixed | Array of logo images, each with requiredalt text; add/remove/reorder via Sanity. Motion is fixed/hardcoded (Ref: BR-1.7.1-04) — not Sanity-configurable. Display rule: if the array is empty, the strip does not render. |
| 4 | Platform Ecosystem Row | Image (Array) + Label | Array of platform logos (Quantower, ATAS, MotiveWave, TradeSea, Sierra Chart observed), each with requiredalt text + optional Label (Text). No motion, no button. Display rule: if the array is empty, the row does not render. |
| 5 | Feature Content Cards | Array (Image/Icon + Title + Body) + Motion | Same shape as S5 in the shared table (Card Icon/Image + Card Title + Card Body, repeating, Sanity-configurable Motion).Display rule: if the array is empty, the section does not render. |
| 6 | CME Level 2/DOM Comparison (Ref: BR-1.7.1-05, "Stop Trading Blind") | Image/Diagram (x2) + Text + Motion | Basic Chart Asset (Image) + Level 2 DOM Asset (Image) + Comparison Caption (Text, optional). Motion is Sanity-configurable via the shared Motion field (default: Interactive/Animated) — not a fixed exception. Motion reference: Motion clip (chart / stop trading blind). Business Rule: if the motion changes, the reference clip above must be updated to match. |
| 7 | 3-Step Level I vs Level 2 Walkthrough | Array (Icon + Title + Body), 3 items | Each step:Step Icon/Image (Image, optional) + Step Title (Text) + Step Body (Text Area). No button. |
| 8 | Persona Tabs | Array (Tab Label + Body) + Button | Each tab:Tab Label (Text) + Tab Body (Text Area) + optional Tab CTA Button (shared Button Link structure). Tab count observed: 4 (ES/NQ Scalpers, Oil/Gold Traders, Swing Traders, Micro Futures Traders). Tab-switching interaction is frontend-fixed; content is Sanity-editable. |
| 9 | Technical Specifications & Infrastructure Table | Array (Label + Value), ~10 rows observed | Each row:Label (Text) + Value (Text). Read-only, no image, no motion, no button. Row count not hardcoded; editors add/remove rows via Sanity. |
| 10 | FAQ Items | Array (Question + Answer) | Same shape as S12 in the shared table (accordion expand/collapse, frontend-fixed interaction; content Sanity-editable). |
| 11 | Final CTA Heading + Button | Text + Button (Label + Link) | Same shape as S13 in the shared table (shared Button Link structure for destination). |
END OF UC_1.7.1
UC_1.7.2 — Forex Trading Page
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.2 |
| Use Case | Forex Trading Page (Sanity Template) |
| Description | Visitor navigates to/trading/forex and sees the SEO landing page about Forex trading, built from the shared Sanity CMS flexible template (see § Sanity Field Editability — by Layout Section above). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 18 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/forex route via one of two entry points:
- Direct URL entry, or clicking "Forex Traders" under the "Markets" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route).
- Clicking the
Learn Morebutton under the "Forex Traders" market card in the Homepage's "Built for Your Market" section — UC_1.3.1 §5 "Built for Your Market" — opens in the same tab (internal route). - Clicking "Forex" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
- A Sanity content document for the Forex vertical exists and is published.
4. Post-conditions
- The Forex Trading Page is rendered with the Hero, Trustpilot/Firm Logos trust strip, NY4 Infrastructure Diagram, dynamic content sections, and FAQ content currently published in Sanity for this vertical (per the expanded S1-S14 catalog, Ref: A-21).
5. Basic Flow
- The visitor clicks "Forex Traders" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/forex. - The system resolves the
/trading/forexroute to the shared Market Vertical template component and queries Sanity CMS for the Forex content document (Ref: BR-1.7.2-01). - The system displays the full Forex Trading Page: Global Header (S1/UC_01) + Hero (S2) + Trustpilot Badge + Firm Logos Strip trust strip (S3, Ref: § Trustpilot TrustScore — Live API Field and § Fixed-Motion Exceptions above) + Regulatory Disclaimer (S4) + Feature Cards (S5) + Careers/3-Step Section (S6) + NY4 Infrastructure Diagram (S7, Ref: § NY4 Infrastructure Diagram Field above) + Spec/Feature Table (S8) + Persona Tabs (S9) + Comparison Table (S10) + Ecosystem Section (S11) + FAQ (S12) + Final CTA (S13) + Global Footer with a second Trustpilot Badge + Firm Logos Strip (S14) (content per § Sanity Field Editability — by Layout Section above) + Global Footer (UC_01).
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
BR-1.7.2-01: Empty-data and Motion Rules
Empty-data display rules (Regulatory Disclaimer, Feature Cards, Careers/3-Step Section) and the motion-change lockstep rule (Firm Logos Strip, NY4 diagram) are documented in § Sanity Field Editability — by Layout Section and § Fixed-Motion Exceptions above — not repeated here.
9. Wireframe / UI
- Screen: Forex Trading Page — Trading Template Page Forex.png
10. Screen Description and Business Rules
Forex uses the shared Sanity page-configuration and per-section field catalog together with UC_1.7.4 and UC_1.7.5 — see § Sanity Page Configuration Fields, § Button Link Field — Shared Destination Model, § Motion Field — Shared Motion Selector, § Fixed-Motion Exceptions, § Trustpilot TrustScore — Live API Field, and § Sanity Field Editability — by Layout Section above for the full section-by-section breakdown (rows S1 through S14, plus the NY4 Infrastructure Diagram Field sub-table) — including the empty-data display rules (S4, S5, S6) and the motion-lockstep rule for fixed-motion elements (Firm Logos Strip, NY4 diagram). No section or field is unique to this page.
END OF UC_1.7.2
UC_1.7.3 — Crypto Trading Page (In review)
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.3 |
| Use Case | Crypto Trading Page (Coming Soon) |
| Description | Visitor navigates to/trading/crypto and sees a "Coming Soon" page, built from the shared Sanity CMS flexible template (see § Sanity Field Editability — by Layout Section above). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 19 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/crypto route via one of two entry points:
- Direct URL entry, or clicking "Crypto Traders" under the "Markets" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route; per UC_1.1.1 §6/E_1.1.1.4, this link is not yet implemented and routes to this Coming Soon page instead of a 404).
- Clicking the
Learn Morebutton under the "Crypto Traders" market card in the Homepage's "Built for Your Market" section — UC_1.3.1 §5 "Built for Your Market" — opens in the same tab (internal route). - Clicking "Crypto" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
- A Sanity content document for the Forex vertical exists and is published.
4. Post-conditions
- The Coming Soon page is rendered for the
/trading/cryptowith the Hero.
5. Basic Flow
- The visitor clicks "Crypto Traders" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/crypto. - The system displays the Coming Soon page for this route: Global Header (UC_01) + Coming Soon message (Ref: BR-1.7.3-01, §9) + Global Footer (UC_01), instead of the shared Market Vertical template's Sanity-driven content.
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
N/A
9. Wireframe / UI
- Screen: Crypto Trading Page (Coming Soon) — Crypto Page (Coming Soon).png
10. Screen Description and Business Rules
| No. | Field Name | Field Type | Validation Rule / Behaviour |
|---|---|---|---|
| 1 | Coming Soon Message | Label | Sanity CMS field:Same field shapes as S2 in shared table above:- Icon- Text heading- Text Area subheading |
END OF UC_1.7.3
UC_1.7.4 — News & Events Page
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.4 |
| Use Case | News & Events Page (Sanity Template) |
| Description | Visitor navigates to/trading/news and sees the SEO landing page about the News & Events trading strategy, built from the shared Sanity CMS flexible template (see § Sanity Field Editability — by Layout Section above). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 19 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/news route via one of two entry points:
- Direct URL entry, or clicking "News & Events" under the "Strategies" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route). Per UC_1.1.1 §6 "Trading Dropdown (Mega-menu)", the Homepage has no "Learn More"-style card link to the Strategies column (that pattern is Markets-only — Ref: UC_1.3.1 §5).
- Clicking "News Trading" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
- A Sanity content document for the News & Events vertical exists and is published.
4. Post-conditions
- The News & Events Page is rendered with the Hero, Trustpilot/Firm Logos trust strip, NY4 Infrastructure Diagram, dynamic content sections, and FAQ content currently published in Sanity for this vertical (per the expanded S1-S14 catalog, Ref: A-21).
5. Basic Flow
- The visitor clicks "News & Events" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/news. - The system resolves the
/trading/newsroute to the shared Market Vertical template component and queries Sanity CMS for the News & Events content document (Ref: BR-1.7.4-01). - The system displays the full News & Events Page: Global Header (S1/UC_01) + Hero (S2) + Trustpilot Badge + Firm Logos Strip trust strip (S3, Ref: § Trustpilot TrustScore — Live API Field and § Fixed-Motion Exceptions above) + Regulatory Disclaimer (S4) + Feature Cards (S5) + Careers/3-Step Section (S6) + NY4 Infrastructure Diagram (S7, Ref: § NY4 Infrastructure Diagram Field above) + Spec/Feature Table (S8) + Persona Tabs (S9) + Comparison Table (S10) + Ecosystem Section (S11) + FAQ (S12) + Final CTA (S13) + Global Footer with a second Trustpilot Badge + Firm Logos Strip (S14) (content per § Sanity Field Editability — by Layout Section above) + Global Footer (UC_01).
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
BR-1.7.4-01: Empty-data and Motion Rules
(Identical mechanism to UC_1.7.2 BR-1.7.2-01 — shared rule.) Empty-data display rules (Regulatory Disclaimer, Feature Cards, Careers/3-Step Section) and the motion-change lockstep rule (Firm Logos Strip, NY4 diagram) are the same as those documented in § Sanity Field Editability — by Layout Section and § Fixed-Motion Exceptions above — not repeated here.
9. Wireframe / UI
- Screen: News & Events Page — News Page.png
10. Screen Description and Business Rules
News & Events uses the shared Sanity page-configuration and per-section field catalog together with UC_1.7.2 and UC_1.7.5 — see § Sanity Page Configuration Fields, § Button Link Field — Shared Destination Model, § Motion Field — Shared Motion Selector, § Fixed-Motion Exceptions, § Trustpilot TrustScore — Live API Field, and § Sanity Field Editability — by Layout Section above for the full section-by-section breakdown (rows S1 through S14, plus the NY4 Infrastructure Diagram Field sub-table) — including the empty-data display rules (S4, S5, S6) and the motion-lockstep rule for fixed-motion elements (Firm Logos Strip, NY4 diagram). No section or field is unique to this page.
END OF UC_1.7.4
UC_1.7.5 — Scalping Page
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.5 |
| Use Case | Scalping Page (Sanity Template) |
| Description | Visitor navigates to/trading/scalping and sees the SEO landing page about the Scalping trading strategy, built from the shared Sanity CMS flexible template (see § Sanity Field Editability — by Layout Section above). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 19 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/scalping route via one of two entry points:
- Direct URL entry, or clicking "Scalping" under the "Strategies" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route). Per UC_1.1.1 §6 "Trading Dropdown (Mega-menu)", the Homepage has no "Learn More"-style card link to the Strategies column (that pattern is Markets-only — Ref: UC_1.3.1 §5).
- Clicking "Scalping" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
- A Sanity content document for the Scalping vertical exists and is published.
4. Post-conditions
- The Scalping Page is rendered with the Hero, Trustpilot/Firm Logos trust strip, NY4 Infrastructure Diagram, dynamic content sections, and FAQ content currently published in Sanity for this vertical (per the expanded S1-S14 catalog, Ref: A-21).
5. Basic Flow
- The visitor clicks "Scalping" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/scalping. - The system resolves the
/trading/scalpingroute to the shared Market Vertical template component and queries Sanity CMS for the Scalping content document (Ref: BR-1.7.5-01). - The system displays the full Scalping Page: Global Header (S1/UC_01) + Hero (S2) + Trustpilot Badge + Firm Logos Strip trust strip (S3, Ref: § Trustpilot TrustScore — Live API Field and § Fixed-Motion Exceptions above) + Regulatory Disclaimer (S4) + Feature Cards (S5) + Careers/3-Step Section (S6) + NY4 Infrastructure Diagram (S7, Ref: § NY4 Infrastructure Diagram Field above) + Spec/Feature Table (S8) + Persona Tabs (S9) + Comparison Table (S10) + Ecosystem Section (S11) + FAQ (S12) + Final CTA (S13) + Global Footer with a second Trustpilot Badge + Firm Logos Strip (S14) (content per § Sanity Field Editability — by Layout Section above) + Global Footer (UC_01).
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
BR-1.7.5-01: Empty-data and Motion Rules
(Identical mechanism to UC_1.7.2 BR-1.7.2-01 — shared rule.) Empty-data display rules (Regulatory Disclaimer, Feature Cards, Careers/3-Step Section) and the motion-change lockstep rule (Firm Logos Strip, NY4 diagram) are the same as those documented in § Sanity Field Editability — by Layout Section and § Fixed-Motion Exceptions above — not repeated here.
9. Wireframe / UI
- Screen: Scalping Page — Scalping Page.png
10. Screen Description and Business Rules
Scalping uses the shared Sanity page-configuration and per-section field catalog together with UC_1.7.2 and UC_1.7.4 — see § Sanity Page Configuration Fields, § Button Link Field — Shared Destination Model, § Motion Field — Shared Motion Selector, § Fixed-Motion Exceptions, § Trustpilot TrustScore — Live API Field, and § Sanity Field Editability — by Layout Section above for the full section-by-section breakdown (rows S1 through S14, plus the NY4 Infrastructure Diagram Field sub-table) — including the empty-data display rules (S4, S5, S6) and the motion-lockstep rule for fixed-motion elements (Firm Logos Strip, NY4 diagram). No section or field is unique to this page.
END OF UC_1.7.5
UC_1.7.6 — Swing Trading Page
1. Overview
| Field | Content |
|---|---|
| ID | UC_1.7.6 |
| Use Case | Swing Trading Page (Sanity Template) |
| Description | Visitor navigates to/trading/swing and sees the SEO landing page about the Swing Trading strategy, built from the shared Sanity CMS flexible template (see § Sanity Field Editability — by Layout Section above). |
| Zapier Flow | - |
| Zapier Table | - |
| Related WBS Row | 19 |
| 3rd Party | Sanity |
2. Trigger
The visitor navigates to the /trading/swing route via one of two entry points:
- Direct URL entry, or clicking "Swing Trading" under the "Strategies" column of the Global Header "TRADING" dropdown (UC_01) — opens in the same tab (internal route). Per UC_1.1.1 §6 "Trading Dropdown (Mega-menu)", the Homepage has no "Learn More"-style card link to the Strategies column (that pattern is Markets-only — Ref: UC_1.3.1 §5).
- Clicking "Swing Trading" under the Global Footer's "Trading" column (UC_1.1.1 §6 "Footer") — opens in the same tab (internal route).
3. Pre-conditions
- The visitor is on any page of the marketing website (or arrives directly via URL/external link).
- A Sanity content document for the Swing Trading vertical exists and is published.
4. Post-conditions
- [Resolved] The Swing Trading Page is rendered with the Hero, Trustpilot/Firm Logos trust strip, NY4 Infrastructure Diagram, dynamic content sections, and FAQ content currently published in Sanity for this vertical (per the expanded S1-S14 catalog, Ref: A-21) — same section set as Forex/News/Scalping, since Swing shares the identical "Market Vertical" Sanity template mechanism (Ref: BR-1.7.6-01).
5. Basic Flow
- The visitor clicks "Swing Trading" in the Global Header "TRADING" dropdown (UC_01) — or navigates directly to
/trading/swing. - The system resolves the
/trading/swingroute to the shared Market Vertical template component and queries Sanity CMS for the Swing Trading content document (Ref: BR-1.7.6-01). - The system displays the full Swing Trading Page following the same S1-S14 section catalog as UC_1.7.2/UC_1.7.4/UC_1.7.5: Global Header (S1/UC_01) + Hero (S2) + Trustpilot Badge + Firm Logos Strip trust strip (S3, Ref: § Trustpilot TrustScore — Live API Field and § Fixed-Motion Exceptions above) + Regulatory Disclaimer (S4) + Feature Cards (S5) + Careers/3-Step Section (S6) + NY4 Infrastructure Diagram (S7, Ref: § NY4 Infrastructure Diagram Field above) + Spec/Feature Table (S8) + Persona Tabs (S9) + Comparison Table (S10) + Ecosystem Section (S11) + FAQ (S12) + Final CTA (S13) + Global Footer with a second Trustpilot Badge + Firm Logos Strip (S14) + Global Footer (UC_01). [Resolved] Same section set as Forex/News/Scalping, since Swing reuses the identical shared Sanity template mechanism (Ref: BR-1.7.6-01).
6. Alternative Flow
- N/A
7. Exceptional Flow
- N/A
8. Business Rule
BR-1.7.6-01: Empty-data and Motion Rules
(Identical mechanism to UC_1.7.2 BR-1.7.2-01 — shared rule.) Empty-data display rules (Regulatory Disclaimer, Feature Cards, Careers/3-Step Section) and the motion-change lockstep rule (Firm Logos Strip, NY4 diagram) are the same as those documented in § Sanity Field Editability — by Layout Section and § Fixed-Motion Exceptions above — not repeated here.
9. Wireframe / UI
- Screen: Swing Trading Page — no dedicated Swing-specific wireframe export exists; reuses Trading Template Page Forex.png as its structural reference (Ref: BR-1.7.6-01, shared "Market Vertical" Sanity template mechanism).
10. Screen Description and Business Rules
Swing Trading uses the same shared Sanity page-configuration and per-section field catalog as UC_1.7.2, UC_1.7.4, UC_1.7.5 — see § Sanity Page Configuration Fields, § Button Link Field — Shared Destination Model, § Motion Field — Shared Motion Selector, § Fixed-Motion Exceptions, § Trustpilot TrustScore — Live API Field, and § Sanity Field Editability — by Layout Section above for the full section-by-section breakdown (rows S1 through S14, plus the NY4 Infrastructure Diagram Field sub-table) — including the empty-data display rules (S4, S5, S6) and the motion-lockstep rule for fixed-motion elements (Firm Logos Strip, NY4 diagram). No section or field is unique to this page.
END OF UC_1.7.6