/* global React, Icon, Btn, Reveal */ /* ────────────────────────────────────────────────────────────── tech-solutions.jsx — data, scrollspy pill-nav, solution sections ────────────────────────────────────────────────────────────── */ const { useState: useStateS, useEffect: useEffectS, useRef: useRefS } = React; const SOLUTIONS = [ { id: 'modernize', pill: 'Modernization', icon: 'layers', overline: 'App Modernization', title: ['AI-driven application', 'modernization'], blurb: 'Turn decades of legacy systems into clean, maintainable services — automatically translated, decomposed, and documented.', features: [ { icon: 'code', title: 'Legacy code translation', desc: 'Automated COBOL-to-Java conversion with semantic equivalence checks.' }, { icon: 'split', title: 'Monolith deconstruction', desc: 'AI identifies clean microservice boundaries from tangled codebases.' }, { icon: 'gauge', title: 'Technical debt reduction', desc: 'Continuous refactoring removes duplication and dead paths.' }, { icon: 'map', title: 'Architecture mapping', desc: 'Instant, living documentation of legacy systems and dependencies.' }, ], }, { id: 'qa', pill: 'QA Automation', icon: 'shield', overline: 'QA Automation', title: ['Next-gen QA', 'automation'], blurb: 'Tests that fix themselves, data that generates itself, and defects caught before a single line is run.', features: [ { icon: 'flask', title: 'Self-healing test scripts', desc: 'AI repairs broken selectors automatically as the UI evolves.' }, { icon: 'layers',title: 'Synthetic data generation', desc: 'Instant creation of compliant, realistic test datasets.' }, { icon: 'bug', title: 'Predictive defect analysis', desc: 'Pinpoints high-risk code before testing even begins.' }, { icon: 'msg', title: 'Natural language testing', desc: 'Plain-English prompts generate full test suites.' }, ], }, { id: 'mobile', pill: 'Mobile', icon: 'phone', overline: 'Mobile Development', title: ['Intelligent mobile', 'app development'], blurb: 'One spec, every platform. Generate, migrate, and optimize native apps with an AI that understands the edge.', features: [ { icon: 'split', title: 'Cross-platform code gen', desc: 'Swift and Kotlin generated simultaneously from one source.' }, { icon: 'sync', title: 'Automated SDK updates', desc: 'AI migrates breaking API changes without manual rewrites.' }, { icon: 'cpu', title: 'On-device AI optimization', desc: 'Compresses models for fast, private edge execution.' }, { icon: 'target',title: 'Context-aware features', desc: 'Predictive user actions enable look-ahead loading.' }, ], }, { id: 'ux', pill: 'UI/UX Design', icon: 'pen', overline: 'UI/UX Design', title: ['AI-powered', 'UI/UX design'], blurb: 'From sketch to shipped interface — designs that build themselves, adapt to users, and stay accessible by default.', features: [ { icon: 'code', title: 'Wireframe-to-code', desc: 'Sketches instantly become functional, production frontend.' }, { icon: 'user', title: 'Dynamic personalization', desc: 'Interfaces adapt in real time to user behavior.' }, { icon: 'eye', title: 'Accessibility auditing', desc: 'Continuous WCAG compliance scanning as you design.' }, { icon: 'wave', title: 'Predictive heatmaps', desc: 'AI simulates user attention before a single user arrives.' }, ], }, ]; // ── Sticky scroll-spy pill nav ─────────────────────────────────── const SolutionsNav = ({ active, onJump }) => (
{f.desc}