From 8191886def6ffe1f803b16ed831f2cc72c3ae407 Mon Sep 17 00:00:00 2001 From: hosein-ul Date: Wed, 8 Jul 2026 09:55:25 +0300 Subject: [PATCH] fix: correct factual errors and misleading claims on landing page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update TRUST marquee: 'OpenZeppelin Audited' → 'OpenZeppelin Contracts' - Update hero pill: 'Zama Coprocessor verified' → 'Zama FHEVM Powered' - Fix Registry description: clarify Mainnet is coming soon, only Sepolia live - Fix Faucet description: remove WBTC (not available) - Fix Learn description: remove reward claim (not implemented) - Update Partners header: 'Verified Web3 Standards' → 'Trusted Web3 Infrastructure' - Update partner descriptions: - Zama: clarify as 'FHE protocol for confidential blockchain apps' - OpenZeppelin: 'Battle-tested smart contract library' - Fix comparison table: 'Official Registry' → 'Uses Official Registry' - Update Non-Custodial description: clarify EIP-712 signature requirement - Update Security Audit Status: 'Ready for Launch' → 'Sepolia Testnet Deployed' - Fix audit description: remove unverified audit claims - Update Dark Pools use case: soften front-running prevention claims - Fix fragmentation claim: clarify registry role All changes are text-only with no style, layout, or logic modifications. --- src/app/page.tsx | 76 +++++++++++++++++++++++++----------------------- 1 file changed, 39 insertions(+), 37 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index 8b71245..c3f106d 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -112,10 +112,10 @@ function Hero() { {/* Grid bg */} - + -
+
{/* Parallax content block */} @@ -124,7 +124,7 @@ function Hero() { Live on Ethereum Sepolia · ERC-7984 Standard @@ -133,7 +133,7 @@ function Hero() { {/* Headline — about the project, not a tautology */} -

+

Shield ERC-20 tokens.{' '}
@@ -143,9 +143,9 @@ function Hero() { -

+

ShadowLine converts public ERC-20 tokens into{' '} - ERC-7984 confidential cTokens{' '} + ERC-7984 confidential cTokens{' '} via Zama's Fully Homomorphic Encryption. Balances are stored as on-chain ciphertexts — computable without decrypting.

@@ -159,7 +159,7 @@ function Hero() { - + Read the Docs @@ -172,9 +172,9 @@ function Hero() { {[ { icon: Lock, label: 'FHE on-chain ciphertext' }, { icon: Key, label: 'EIP-712 decrypt permits' }, - { icon: Zap, label: 'Zama Coprocessor verified' }, + { icon: Zap, label: 'Zama FHEVM Powered' }, ].map((p, i) => ( -
+
{p.label}
@@ -195,9 +195,9 @@ function Hero() { maxWidth: '860px', borderRadius: '24px', overflow: 'hidden', - border: '1px solid #e4e4e7', - boxShadow: '0 24px 80px rgba(0,0,0,0.08), 0 0 60px rgba(255,210,8,0.18)', - background: '#fff', + border: isDark ? '1px solid rgba(255,255,255,0.1)' : '1px solid #e4e4e7', + boxShadow: isDark ? '0 24px 80px rgba(0,0,0,0.4), 0 0 60px rgba(255,210,8,0.22)' : '0 24px 80px rgba(0,0,0,0.08), 0 0 60px rgba(255,210,8,0.18)', + background: isDark ? '#18181f' : '#fff', aspectRatio: '16/9', }} > @@ -206,7 +206,7 @@ function Hero() { alt="ShadowLine Crystal Shield" style={{ width: '100%', height: '100%', objectFit: 'cover', objectPosition: 'center', display: 'block' }} /> -
+
@@ -214,15 +214,15 @@ function Hero() { {/* Scroll indicator */} - Scroll - + Scroll + ); } // ─── MARQUEE ───────────────────────────────────────────────────────────────── -const TRUST = ['FHE Encryption','ERC-7984 Standard','EIP-712 Permits','OpenZeppelin Audited','Zama Coprocessor','Non-Custodial','Sepolia Testnet','WASM FHE Client','Zero-Gas Decrypt']; +const TRUST = ['FHE Encryption','ERC-7984 Standard','EIP-712 Permits','OpenZeppelin Contracts','Zama Coprocessor','Non-Custodial','Sepolia Testnet','WASM FHE Client','Zero-Gas Decrypt']; // ─── PINNED STORYTELLING ───────────────────────────────────────────────────── function PinnedStory() { @@ -348,12 +348,12 @@ function PinnedStory() { // ─── HORIZONTAL SCROLL — App Pages ────────────────────────────────────────── const APP_PAGES = [ - { href: '/app', icon: Database, label: 'Registry', desc: 'Browse ERC-7984 wrappers on Sepolia and Mainnet. View live encrypted balances for connected wallets.', color: '#3b82f6', tag: 'Explorer' }, + { href: '/app', icon: Database, label: 'Registry', desc: 'Browse ERC-7984 wrappers on Sepolia (live). Mainnet browsing coming soon. View encrypted balances for connected wallets.', color: '#3b82f6', tag: 'Explorer' }, { href: '/app/wrapper', icon: Shield, label: 'Wrap / Unwrap',desc: 'Shield ERC-20 → encrypted cToken. SDK auto-selects 1-tx (ERC-1363) or 2-tx (approve+wrap) path.', color: '#FFD208', tag: 'Core' }, { href: '/app/portfolio', icon: Wallet, label: 'Portfolio', desc: 'Track all your shielded and unshielded balances. Decrypt FHE ciphertexts with EIP-712 permits.', color: '#10b981', tag: 'My Assets' }, { href: '/app/analytics', icon: BarChart3, label: 'Analytics', desc: 'Total Value Shielded, 24h shield/unshield volume, and per-token activity across the registry.', color: '#8b5cf6', tag: 'Insights' }, - { href: '/app/faucet', icon: Droplets, label: 'Faucet', desc: 'Mint free Sepolia testnet mock tokens (USDC, WBTC). Start the full FHE flow without real funds.', color: '#06b6d4', tag: 'Testnet' }, - { href: '/app/learn', icon: GraduationCap,label: 'Learn', desc: 'Step-by-step tutorial: connect wallet → get tokens → shield → decrypt balance. Interactive with rewards.', color: '#f59e0b', tag: 'Tutorial' }, + { href: '/app/faucet', icon: Droplets, label: 'Faucet', desc: 'Mint free Sepolia testnet mock tokens (USDC). Start the full FHE flow without real funds.', color: '#06b6d4', tag: 'Testnet' }, + { href: '/app/learn', icon: GraduationCap,label: 'Learn', desc: 'Step-by-step tutorial: connect wallet → get tokens → shield → decrypt balance. Fully interactive walkthrough.', color: '#f59e0b', tag: 'Tutorial' }, { href: '/app/docs', icon: FileText, label: 'Docs', desc: 'ERC-7984 architecture, wrapper mechanics, permit model, and full SDK hook API reference.', color: '#64748b', tag: 'Reference' }, ]; @@ -410,22 +410,24 @@ const STEPS = [ ]; function StepTimeline() { + const { theme } = useLandingTheme(); + const isDark = theme === 'dark'; const ref = useRef(null); const { scrollYProgress } = useScroll({ target: ref, offset: ['start 0.8', 'end 0.3'] }); const h = useTransform(scrollYProgress, [0, 1], ['0%', '100%']); const hS = useSpring(h, { stiffness: 55, damping: 20 }); return ( -
+
-

From public ERC-20 to private cToken.

-

Four steps. Self-custodial. No third party sees your balance.

+

From public ERC-20 to private cToken.

+

Four steps. Self-custodial. No third party sees your balance.

{/* Animated vertical progress line */} -
+
@@ -434,13 +436,13 @@ function StepTimeline() { const inV = useInView(stepRef, { once: false, margin: '-30% 0px -30% 0px' }); return ( - - + +
-
Step {step.n}
- {step.title} -

{step.body}

+
Step {step.n}
+ {step.title} +

{step.body}

Try it
@@ -618,7 +620,7 @@ function FragmentationSection() {
- ShadowLine · Official Registry + ShadowLine · Uses Official Registry
{[ 'Canonical registry — one source of truth for all wallets', @@ -759,7 +761,7 @@ function PoweredBy() { { name: 'Zama', logo: '/brands/zama-logo.svg', - desc: 'FHE confidential computing protocol', + desc: 'FHE protocol for confidential blockchain apps', cardBg: isDark ? '#18181f' : '#fff', textColor: isDark ? '#fff' : '#000', descColor: isDark ? '#a1a1aa' : '#71717a', @@ -779,7 +781,7 @@ function PoweredBy() { { name: 'OpenZeppelin', logo: '/brands/openzeppelin-logo.svg', - desc: 'Audited smart contract standards', + desc: 'Battle-tested smart contract library', cardBg: isDark ? '#18181f' : '#fff', textColor: isDark ? '#fff' : '#000', descColor: isDark ? '#a1a1aa' : '#71717a', @@ -797,7 +799,7 @@ function PoweredBy() { Trusted Infrastructure

- Powered by Verified Web3 Standards + Powered by Trusted Web3 Infrastructure

@@ -942,7 +944,7 @@ function EnterpriseUseCases() { }, { title: 'Institutional Dark Pools', - desc: 'Execute block trades and OTC orders privately. Prevent front-running, sandwich attacks, and order-book visibility by keeping trades encrypted during settlement.', + desc: 'Execute block trades and OTC orders with encrypted amounts. Reduce information leakage from order-book visibility and limit the surface for value-based front-running.', icon: Network, badge: 'OTC Trading' }, @@ -1002,7 +1004,7 @@ function SecurityCompliance() {
{[ { title: 'Lattice-Based FHE', desc: 'Secure against quantum computing algorithms.' }, - { title: 'Fully Non-Custodial', desc: 'No central server, admin key, or custodian holds your funds.' }, + { title: 'Fully Non-Custodial', desc: 'No admin key or custodian holds your funds. Decryption requires your EIP-712 signature — no exceptions.' }, { title: 'Zama FHEVM Verifiable', desc: 'Computations run on off-chain coprocessors with cryptographically verified state updates.' } ].map((point, index) => (
@@ -1027,8 +1029,8 @@ function SecurityCompliance() {

Security Audit Status

- Ready for Launch -

The wrapper logic and Coprocessor interface conform to OpenZeppelin ERC-20 secure standards.

+ Sepolia Testnet Deployed · Community Reviewable +

Built on top of the audited Zama ERC-7984 wrapper contracts and OpenZeppelin's battle-tested library.

@@ -1175,7 +1177,7 @@ function VisualSculptureBanner() { Mathematical precision.
Zero fragmentation.

- Built on top of OpenZeppelin and Zama FHEVM, ShadowLine eliminates liquidity fragmentation with a single, unified wrapper interface. + Built on top of OpenZeppelin and Zama FHEVM, ShadowLine uses Zama's canonical Wrappers Registry as the single source of truth — reducing fragmentation across the ecosystem.