Lexsis Storefronts

Core Workflows

End-to-end flows for creating storefront pages

Core Workflows

1. Ad Creative to Landing Page

Turn a Meta/Google ad into a persona-matched, published landing page.

list_workspaces()
→ get_brand_kit(workspace_id)
→ upload_ad_creative(file_url, workspace_id)
→ analyze_ad_creative(image_urls)
→ match_persona_to_ad(ad_analysis, workspace_id)
→ list_industry_templates(industry)
→ generate_pcx_page(template_id, ad_analysis, persona_match, workspace_id)
→ create_page(blueprint_id, store_id, workspace_id)
→ publish_page(page_id, workspace_id)
→ public URL ready for ad platform

Key Rules

  • Hero headline must match ad headline exactly (message match improves Quality Score)
  • All copy uses persona vocabulary from copy_adaptations
  • Never invent product details, only use what's in ad_analysis
  • Slug format: {brand}-{product}-{persona}-v{n}
  • Always validate_blueprint before create_page

2. Brand Brief to Live Page

Generate a storefront page from a brand brief.

list_workspaces()
→ get_brand_kit(workspace_id)
→ list_design_sources(workspace_id)
→ list_component_types()
→ generate_blueprint_prompt(brief, page_type)
→ [AI assembles blueprint JSON]
→ validate_blueprint(json)
→ write_blueprint(slug, json)
→ screenshot_blueprint(slug, "both")
→ create_page(blueprint_id, store_id, workspace_id)
→ publish_page(page_id, workspace_id)

Quality Checklist

  • Theme uses brand kit colors (not defaults)
  • Hero heading uses theme.typography for weight/tracking
  • Stats section has bold accent color or contrasting background
  • lx_buy_box variant="sticky_bar" present on every PDP
  • All icons use valid lucide:name format
  • validate_blueprint passes with zero errors

3. A/B Testing

Create experiments, measure results, scale winners.

create_page(blueprint_a, store_id, workspace_id) → page_id_a
duplicate_page(page_id_a) → page_id_b
[modify blueprint B — different hero, CTA, etc.]

create_ab_test({
  page_ids: [page_id_a, page_id_b],
  weights: [50, 50],
  workspace_id
})

# Wait for traffic...

get_experiment_results(experiment_id)
→ cvr_per_variant, significance, winner_recommendation

scale_winner(experiment_id, winning_page_id)
→ 100% traffic to winner, experiment complete

4. Brand Setup

Load brand identity and capture design references.

list_workspaces() → workspace_id
get_brand_kit(workspace_id)
update_brand_kit(workspace_id, {
  primary_color, font_heading, font_body, logo_url, voice_md
})
capture_design_source(url, workspace_id)
list_design_sources(workspace_id)

Use brand kit data when generating any blueprint to ensure consistent identity across all pages.