/* ============================================================ VYOVAM Homepage — AI-Powered Algorithmic Trading Infrastructure ============================================================ */ const { useState: useS, useEffect: useE, useRef: useR, useMemo: useM } = React; /* ---------- Helpers ---------- */ function MiniLine({ seed = 1, color = '#3B82F6', height = 40, points = 24 }) { const data = useM(() => { let rng = seed; const rand = () => { rng = (rng * 9301 + 49297) % 233280; return rng / 233280; }; const arr = []; let v = 50; for (let i = 0; i < points; i++) { v += (rand() - 0.5) * 14 + 0.6; arr.push(Math.max(8, Math.min(92, v))); } return arr; }, [seed, points]); const w = 200; const path = data.map((p, i) => { const x = (i / (data.length - 1)) * w; const y = height - (p / 100) * height; return `${i === 0 ? 'M' : 'L'} ${x.toFixed(1)} ${y.toFixed(1)}`; }).join(' '); const area = `${path} L ${w} ${height} L 0 ${height} Z`; const gid = `mlg-${seed}`; return ( ); } function PnLChart() { const data = useM(() => { const arr = []; let v = 30; for (let i = 0; i < 60; i++) { v += Math.sin(i * 0.3) * 1.8 + (i / 60) * 1.6 + (Math.random() - 0.4) * 2.6; arr.push(Math.max(8, Math.min(95, v))); } return arr; }, []); const w = 400, h = 100; const path = data.map((p, i) => { const x = (i / (data.length - 1)) * w; const y = h - (p / 100) * h; return `${i === 0 ? 'M' : 'L'} ${x.toFixed(1)} ${y.toFixed(1)}`; }).join(' '); const area = `${path} L ${w} ${h} L 0 ${h} Z`; const [drawn, setDrawn] = useS(false); useE(() => { const t = setTimeout(() => setDrawn(true), 200); return () => clearTimeout(t); }, []); return ( ); } function Donut() { const slices = [ { label: 'Equities', pct: 42, color: '#3B82F6' }, { label: 'Futures', pct: 28, color: '#10B981' }, { label: 'Crypto', pct: 18, color: '#A78BFA' }, { label: 'FX', pct: 12, color: '#F59E0B' } ]; const r = 30, c = 38, sw = 12; const circ = 2 * Math.PI * r; let off = 0; return (
{slices.map((s, i) => { const len = (s.pct / 100) * circ; const dash = `${len} ${circ - len}`; const el = ( ); off += len; return el; })}
{slices.map((s, i) => (
{s.label} {s.pct}%
))}
); } function OrderFeed() { const baseOrders = useM(() => ([ { side: 'buy', sym: 'BTC-USDT', qty: '0.42', px: '67,842' }, { side: 'sell', sym: 'AAPL', qty: '120', px: '218.40' }, { side: 'buy', sym: 'NIFTY', qty: '2 lots', px: '24,832' }, { side: 'buy', sym: 'ETH-USDT', qty: '4.10', px: '3,521.4' }, { side: 'sell', sym: 'TSLA', qty: '80', px: '245.10' }, ]), []); return (
{baseOrders.map((o, i) => (
{o.sym} {o.side.toUpperCase()} {o.qty} {o.px}
))}
); } /* ---------- Heatmap ---------- */ function Heatmap() { // 48 cells, deterministic colors const cells = useM(() => { const arr = []; let rng = 17; const rand = () => { rng = (rng * 9301 + 49297) % 233280; return rng / 233280; }; for (let i = 0; i < 48; i++) { const v = (rand() - 0.45) * 2; // -0.9 to 1.1 let color, alpha; if (v > 0) { alpha = Math.min(0.7, Math.max(0.12, v * 0.6)); color = `rgba(16,185,129,${alpha})`; } else { alpha = Math.min(0.7, Math.max(0.12, -v * 0.6)); color = `rgba(239,68,68,${alpha})`; } arr.push(color); } return arr; }, []); return (
{cells.map((c, i) => (
))}
); } /* ---------- Execution feed (timestamped) ---------- */ function ExecutionFeed() { const rows = useM(() => ([ { t: '14:32:11', s: 'BTC-USDT', a: 'BUY', q: '0.42', v: '67,842.10' }, { t: '14:32:08', s: 'AAPL', a: 'SELL', q: '120', v: '218.40' }, { t: '14:31:54', s: 'NIFTY 24K', a: 'BUY', q: '2 lots', v: '24,832.05' }, { t: '14:31:42', s: 'ETH-USDT', a: 'BUY', q: '4.10', v: '3,521.40' }, { t: '14:31:30', s: 'TSLA', a: 'SELL', q: '80', v: '245.10' }, { t: '14:31:22', s: 'SPY', a: 'BUY', q: '50', v: '574.85' }, ]), []); return (
{rows.map((r, i) => (
{r.t} {r.s} {r.a} {r.q} {r.v}
))}
); } /* ---------- Count-up metric ---------- */ function CountUp({ value }) { // parse "99.9%", "< 40ms", "500+", "24/7" const m = String(value).match(/^([^0-9]*)([\d.]+)(.*)$/); const ref = useR(null); const [display, setDisplay] = useS(value); useE(() => { if (!m) return; const reduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches; if (reduced || value === '24/7') { setDisplay(value); return; } const target = parseFloat(m[2]); const decimals = (m[2].split('.')[1] || '').length; const el = ref.current; if (!el) return; const obs = new IntersectionObserver(([entry]) => { if (!entry.isIntersecting) return; obs.disconnect(); const t0 = performance.now(); const dur = 1200; const tick = (t) => { const p = Math.min(1, (t - t0) / dur); const eased = 1 - Math.pow(1 - p, 3); setDisplay(`${m[1]}${(target * eased).toFixed(decimals)}${m[3]}`); if (p < 1) requestAnimationFrame(tick); }; requestAnimationFrame(tick); }, { threshold: 0.4 }); obs.observe(el); return () => obs.disconnect(); }, [value]); return {display}; } /* ---------- One core, three products diagram ---------- */ function CoreBranches({ setPage }) { return (
AI Engineering Core
{ e.preventDefault(); setPage('infrastructure'); }}>
Algo Trading LIVE

Institutional-grade trading infrastructure

{ e.preventDefault(); setPage('ecommerce'); }}>
E-Commerce Ops SOON

Multi-channel operations, run like a desk

{ e.preventDefault(); setPage('fluentme'); }}>
FluentMe LIVE

Consumer AI language app · fluentme.ai

); } /* ---------- HERO Dashboard mock ---------- */ function HeroDashboard() { return (
{/* P&L hero card */}
Daily P&L ▲ +4.82%
+$14,283.40
{/* Sharpe */}
Sharpe Ratio 30D
2.14
{/* Risk meter */}
Risk Exposure MED
LowMediumHigh
{/* Order log */}
Live Orders 5 active
{/* Allocation donut */}
Portfolio Allocation $1.42M
{/* Broker status */}
Broker Status ● 5 / 5
ZERODHA
IBKR
BINANCE
ALPACA
KOTAK
{/* Floating widgets */}
Strategy live VYO-04 · paper → live
Latency · 38ms all regions healthy
); } /* ---------- Reveal ---------- */ function FinReveal({ children, delay = 0 }) { const ref = useR(null); const [shown, setShown] = useS(false); useE(() => { const el = ref.current; if (!el) return; const obs = new IntersectionObserver(([entry]) => { if (entry.isIntersecting) { setTimeout(() => setShown(true), delay); obs.unobserve(el); } }, { threshold: 0.12 }); obs.observe(el); return () => obs.disconnect(); }, [delay]); return
{children}
; } /* ---------- Icons ---------- */ const Ic = { bolt: , brain: , shield: , chart: , cloud: , network: , lock: , globe: , pulse: , layers: , check: , }; /* ============================================================ HOMEPAGE ============================================================ */ function HomePage({ setPage }) { return (
{/* live global market ticker */} {/* ============ HERO ============ */}
AI Engineering · Three business lines in production

AI engineering for markets — and for everyday life.

Vyovam builds real-time AI infrastructure that powers an institutional-grade trading platform, full-service e-commerce operations, and FluentMe — a consumer language-speaking app.

{Ic.check} Real-Time Infrastructure {Ic.check} AI-Assisted Systems {Ic.check} Multi-Market Support
Illustrative sample data — not actual performance.
{/* ============ OUR PRODUCTS ============ */}
Our Products

Three business lines. One AI engineering core.

Trading infrastructure, e-commerce operations, and consumer AI — engineered on the same real-time core.

{/* ============ ARCHITECTURE ============ */}
How it works

Built like infrastructure, not like a bot.

Every order flows through five validated stages — strategy, risk, brokerage, execution, monitoring — with full observability at each step.

{[ { t: 'Strategy Engine', s: 'signals', i: Ic.brain, det: 'ML-validated signals generated on tick data' }, { t: 'Risk Validation', s: 'pre-trade', i: Ic.shield, det: 'Limits and circuit breakers checked before routing' }, { t: 'Broker API Layer', s: 'routing', i: Ic.network, det: 'Smart order routing across five broker venues' }, { t: 'Execution Engine', s: 'fills', i: Ic.bolt, det: 'Sub-40ms round-trip execution and fills' }, { t: 'Monitoring', s: 'dashboards', i: Ic.chart, det: 'Live P&L, latency, and health observability' }, ].map((n, i) => (
0{i + 1}
{n.i}

{n.t}

{n.s}

{n.det}
))}
{/* ============ SECURITY ============ */}
Security & Stability

Built to operate, not just to launch.

Defensible infrastructure with the operational rigor expected of an institutional desk.

{[ { i: Ic.lock, t: 'Encrypted Infrastructure', d: 'TLS in transit, AES-256 at rest, broker credentials in HSM-backed vaults.' }, { i: Ic.pulse, t: 'High Availability', d: 'Multi-AZ, auto-failover, with quarterly DR drills and 99.9% SLA targets.' }, { i: Ic.cloud, t: 'Cloud-Native Deployment', d: 'Containerized services, declarative config, zero-downtime rollouts.' }, { i: Ic.shield, t: 'Risk-Controlled Execution', d: 'In-line risk gateways enforce limits before any order reaches a broker.' }, { i: Ic.chart, t: 'Monitoring Architecture', d: 'Distributed traces, structured logs, and PagerDuty-grade alerting.' }, { i: Ic.network, t: 'Broker API Stability', d: 'Rate-limit aware retries, idempotent submissions, and venue-side reconciliation.' }, ].map((s, i) => (
{s.i}

{s.t}

{s.d}

))}
{/* Final CTA removed */}
); } Object.assign(window, { HomePage });