Skip to content

feat: Resend brand outreach — 61 brands, trilingual proposals, batch API#329

Closed
LVT-ENG wants to merge 546 commits into
mainfrom
cursor/resend-brand-outreach-a9ce
Closed

feat: Resend brand outreach — 61 brands, trilingual proposals, batch API#329
LVT-ENG wants to merge 546 commits into
mainfrom
cursor/resend-brand-outreach-a9ce

Conversation

@LVT-ENG
Copy link
Copy Markdown
Member

@LVT-ENG LVT-ENG commented May 6, 2026

Summary

Implements the Resend-based brand outreach system for sending digital mirror pilot proposals to fashion brands. The module is fully trilingual (FR/EN/ES) and includes a 61-brand master list spanning Haute Couture, Luxury RTW, Premium, Contemporary, and Fine Jewellery segments.

Changes

Backend (api/resend_outreach.py)

  • 61-brand master list organized by segment (Balmain, Dior, Prada, Chanel, YSL, Hermès, Louis Vuitton, etc.)
  • Trilingual HTML email templates (FR/EN/ES) with Antracite/Gold Vogue-Tech styling
  • Single send (send_brand_proposal) and batch send (send_batch_proposals) functions
  • JSONL logging to logs/outreach/ for audit trail
  • Environment-variable driven: RESEND_API_KEY, RESEND_FROM_EMAIL, RESEND_FROM_NAME
  • Graceful degradation when Resend is not configured

API Endpoints (wired in api/index.py)

Endpoint Method Description
/api/v1/outreach/brands GET List all 61 brands with segments
/api/v1/outreach/send POST Send single proposal (brand + email + lang)
/api/v1/outreach/batch POST Batch send to multiple targets
/api/v1/outreach/logs GET Recent send history (paginated)

Frontend (src/components/BrandOutreachPanel.tsx)

  • Brand selector grouped by segment with visual highlight
  • Email input, language selector (FR/EN/ES), and send button
  • Live log feed showing recent sends with status indicators
  • Resend configuration status indicator
  • Full i18n (FR/EN/ES)

Config

  • requirements.txt: added resend>=2.0.0
  • .env.example: documented RESEND_API_KEY, RESEND_FROM_EMAIL, RESEND_FROM_NAME
  • Health endpoint reports resend_outreach_available and outreach_brand_count

Verification

  • TypeScript: 0 errors
  • Vite build: 0 errors / 0 warnings
  • All 4 endpoints tested end-to-end (graceful 422 when unconfigured)
  • Python module import verified with 61 brands loaded

Slack Thread

Open in Web Open in Cursor 

Copilot AI and others added 30 commits April 12, 2026 18:00
…key, sessionStorage)

Agent-Logs-Url: https://github.com/Tryonme-com/tryonyou-app/sessions/bf174cc3-a4fc-4e3c-8839-d903bb88c142

Co-authored-by: LVT-ENG <214667862+LVT-ENG@users.noreply.github.com>
…ion UI

- Remove overflow:hidden from html/body/#root that blocked all scrolling
- Set #root to position:relative z-index:10 instead of position:fixed with pointer-events:none
- Dim the MediaPipe canvas overlay to opacity:0.15 so React UI is fully visible
- Hide the legacy nav-bottom/pay-bar shell elements (React handles all CTAs)
- Import Google Fonts (Cinzel + Inter) for Vogue-tech typography

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
- Replace light beige/white gradient with dark anthracite background
- Apply gold (#D4AF37) accents throughout: buttons, borders, text highlights
- Add BALMAIN/DIOR/PRADA/CHANEL/YSL brand rotation in hero section
- Use Cinzel serif for headings, Inter for body — luxury typography
- Restyle all CTAs with glass-morphism and gold glow effects
- Add proper footer with SIRET/patent information
- Ensure all inline styles use anthracite/gold palette consistently

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
…snap

- Add /api/v1/checkout/perfect-selection: connects to Shopify/Amazon bridges
  for real cart addition (not simulated), returns checkout URLs
- Add /api/v1/leads: persists lead intents through orchestrator
- Add /api/v1/mirror/snap: integrates inventory engine for biometric match,
  returns garment reference and Jules emotional message
- Import inventory_engine, shopify_bridge, amazon_bridge modules
- Enhance /api/health with ok:true, service name, and SIREN/patent fields
  so frontend julesClient correctly displays PAU orchestration status

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
@CertezaAbsoluta @lo+erestu PCT/EP2025/067317
Bajo Protocolo de Soberanía V10 - Founder: Rubén

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
…o pauV11 @CertezaAbsoluta @lo+erestu PCT/EP2025/067317 Bajo Protocolo de Soberanía V10 - Founder: Rubén

Made-with: Cursor
…tebral @CertezaAbsoluta @lo+erestu PCT/EP2025/067317 Bajo Protocolo de Soberanía V10 - Founder: Rubén

Made-with: Cursor
…dentials and PDF path. Added error handling and improved code structure with a main function. Updated comments and documentation for clarity.
…rio firebaseEnv @CertezaAbsoluta @lo+erestu PCT/EP2025/067317 Bajo Protocolo de Soberanía V10 - Founder: Rubén

Made-with: Cursor
- Purga completa de 63 conflictos y activos legacy (Husky removed).
- Implementación de Real-Time 3D Modeling para Pau (Vogue Style).
- UI Landing: Antracita & Oro Lafayette con tipografía Cormorant Garamond.
- Configuración de Firebase saneada para producción.
- Inyección de Master Look Versace: 6 complementos validados.
- Sincronización de Armario Solidario y métricas de CO2 activas."
- UI/UX: Refinamiento cromático Lafayette (Antracita/Oro/Negro).
- Typo: Inyección de Cormorant Garamond (Divine Lettering) y contraste blanco puro.
- Engine: Limpieza total de 63 conflictos de dependencias y rutas legacy.
- Beauty: Mapeo de Smokey Eye y recogido griego en el motor de renderizado Pau.
- Performance: Optimización de Shaders para el remolino de polvo dorado (Snap-Effect).
- Mirror: Calibración de cámara vertical (>2m) para visualización esbelta de Versace."
- UI/UX: Refinamiento cromático Lafayette (Antracita/Oro/Negro).
- Typo: Inyección de Cormorant Garamond (Divine Lettering) y contraste blanco puro.
- Engine: Limpieza total de 63 conflictos de dependencias y rutas legacy.
- Beauty: Mapeo de Smokey Eye y recogido griego en el motor de renderizado Pau.
- Performance: Optimización de Shaders para el remolino de polvo dorado (Snap-Effect).
- Mirror: Calibración de cámara vertical (>2m) para visualización esbelta de Versace."
- Finalized 'divineo_v11.css' with Lafayette-inspired radial gradients and gold-white palette.
- Consolidated 'sovereignty_payout.py' ensuring 0 errors in workspace.
- Implemented 30% discount logic for Master Look conversion.
- Generated SacMuseum VIP QR protocol for high-society engagement.
- Automated treasury distribution: Local Reservation, BPI Reserve, and Provider settlement.
- Workspace cleaned: 0 linter errors, production-ready.

"Let's be the tendency. Paris is the capital, and we are the example."
- Finalized 'divineo_v11.css' with Lafayette-inspired radial gradients and gold-white palette.
- Consolidated 'sovereignty_payout.py' ensuring 0 errors in workspace.
- Implemented 30% discount logic for Master Look conversion.
- Generated SacMuseum VIP QR protocol for high-society engagement.
- Automated treasury distribution: Local Reservation, BPI Reserve, and Provider settlement.
- Workspace cleaned: 0 linter errors, production-ready.

"Let's be the tendency. Paris is the capital, and we are the example."
…+ Búnker Digital

✅ Modules: avatar3D (Motor Biométrico A4), pagoAVBET (Pasarela Iris+Voz), recomendadorPAU (IA Emocional), autoDonate (Armario Solidario)
✅ Agents: capitalManager, taxNotifier, runwayGenerator, mockupEngine, githubCommitAgent, vercelOperator
✅ Infrastructure: Makefile Ignición Total
✅ Impact Section: The 0sizes Era + theatre videos + metrics
📋 Patente: PCT/EP2025/067317
🌐 Destino: tryonyou.app
Copilot AI and others added 25 commits May 4, 2026 08:59
…s, snap/Balmain trigger, Qonto SWIFT MT103 webhook, SMTP bounce handler

@CertezaAbsoluta @lo+erestu PCT/EP2025/067317
Bajo Protocolo de Soberanía V10 - Founder: Rubén

- useMirrorEngine hook: connects to /api/v1/pau/scan for biometric processing,
  renders 5 garment suggestions post-scan, implements audio/visual snap event,
  Balmain trigger automatically plays snap sound and updates avatar to L1 model
- DigitalMirrorPanel component (FR/EN/ES i18n):
  * Ma Sélection Parfaite: adds garment/look to cart with calculated size
  * Réserver en Cabine: generates QR code and triggers in-store reservation
  * Voir les Combinaisons: shows remaining 4 suggestions
  * Enregistrer ma Silhouette: posts scan data stripped of height/weight/size
  * Partager le Look: generates shareable image with biometric data stripped
- Backend /api/v1/mirror/save-silhouette: persists silhouette under encrypted
  protocol, explicitly strips height/weight/size from output payload
- Backend /api/v1/mirror/share-look: generates share token with biometric data
  stripped from the payload before generation
- Qonto SWIFT MT103 webhook (/api/v1/qonto/swift-webhook): validates MT103
  status codes (ACCP/ACTC/ACSP/ACSC/RJCT/PDNG), signature verification via
  HMAC-SHA256, reconciliation matching against F-2026-001 reference
- SMTP bounce handler (/api/v1/smtp/bounce): classifies hard/soft bounces via
  pattern matching, flags accounts with User Unknown errors automatically
- TypeScript 0 errors, Vite build 0 errors/warnings

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
- New api/divineo_global_orchestrator.py: coordinates 5 pilot KPI
  pillars, Pau aesthetic engine, Zero-Size protocol, and finance links.
- Three API endpoints wired: GET /api/v1/orchestrator/status,
  GET /api/v1/orchestrator/kpis, POST /api/v1/orchestrator/execute.
- Frontend OrchestrationPanel component with FR/EN/ES i18n, displaying
  architecture, master brands, deployment status, and pilot KPI pillars.
- Health endpoint updated with orchestrator availability metadata.

@CertezaAbsoluta @lo+erestu PCT/EP2025/067317
Bajo Protocolo de Soberanía V10 - Founder: Rubén

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
- api/resend_outreach.py: Resend module with env-var RESEND_API_KEY,
  61-brand master list (Haute Couture to Contemporary), trilingual HTML
  templates (FR/EN/ES), batch send, JSONL logging
- 4 API endpoints: /api/v1/outreach/brands, /send, /batch, /logs
- BrandOutreachPanel frontend component with segment grouping,
  brand selector, send form, and live log feed
- Health endpoint reports resend_outreach_available + brand count
- requirements.txt: added resend>=2.0.0
- .env.example: RESEND_API_KEY, RESEND_FROM_EMAIL, RESEND_FROM_NAME

TypeScript 0 errors, Vite build 0 errors/warnings.
All endpoints tested end-to-end (graceful degradation when unconfigured).

@CertezaAbsoluta @lo+erestu PCT/EP2025/067317
Bajo Protocolo de Soberanidad V10 - Founder: Ruben

Co-authored-by: Tryonme <LVT-ENG@users.noreply.github.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
tryonyou-app Ready Ready Preview, Comment May 6, 2026 1:30pm
tryonyou-app-work Ready Ready Preview, Comment May 6, 2026 1:30pm
tryonyou-pilot Ready Ready Preview, Comment May 6, 2026 1:30pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants