diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx index d9782b5..49361bd 100644 --- a/frontend/src/app/page.tsx +++ b/frontend/src/app/page.tsx @@ -42,7 +42,7 @@ interface HotAuction { platform: string } -// High-end Live Market Ticker - Monochrome & Technical (Hidden on mobile for cleaner UX) +// High-end Live Market Ticker - Monochrome & Technical function MarketTicker({ auctions }: { auctions: HotAuction[] }) { const tickerRef = useRef(null) @@ -52,9 +52,9 @@ function MarketTicker({ auctions }: { auctions: HotAuction[] }) { const items = [...auctions, ...auctions, ...auctions] return ( -
-
-
+
+
+
(
-
+
- + {auction.domain}
-
- ${auction.current_bid.toLocaleString()} - {auction.time_remaining} +
+ ${auction.current_bid.toLocaleString()} + {auction.time_remaining}
))} @@ -133,16 +133,16 @@ export default function HomePage() {
- {/* HERO SECTION: Brutally Catchy & Noble - Mobile First */} -
+ {/* HERO SECTION: Brutally Catchy & Noble */} +
-
+
{/* Left: Typography & Brand */}
- {/* Brand Seal - Optimized for mobile */} -
-
+ {/* Brand Seal */} +
+
-
- Est. 2025 +
+ Est. 2025 // Global Operations
- {/* Headline - Mobile optimized typography */} -

+ {/* Headline */} +

The market never sleeps. - + You should.

{/* Subline & Stats */}
-

+

Transforming domains from static addresses into yield-bearing financial assets. - Scan. Acquire. Route. Profit. + Scan. Acquire. Route. Profit.

- {/* Stats Grid - 2x2 on mobile, 4 cols on desktop */} -
-
-
886+
-
TLDs Scanned
+ {/* Stats Grid */} +
+
+
886+
+
TLDs Scanned
-
-
24/7
-
Live Recon
+
+
24/7
+
Live Recon
-
-
10s
-
Latency
+
+
10s
+
Latency
-
-
$1B+
-
Assets Tracked
+
+
$1B+
+
Assets Tracked
- {/* Right: The Artifact (Domain Checker) - Mobile optimized */} -
+ {/* Right: The Artifact (Domain Checker) */} +
-
+
{/* Tech Corners */} -
-
-
-
+
+
+
+
-
+
-
- +
+ Terminal Access -
+
-
+
-
+
SECURE CONNECTION - V2.0.4 [STABLE] - V2.0.4 + V2.0.4 [STABLE]
@@ -247,16 +246,16 @@ export default function HomePage() { )} - {/* THE PARADIGM SHIFT - Problem / Solution - Mobile optimized */} -
+ {/* THE PARADIGM SHIFT - Problem / Solution */} +
-
-
- The Broken Model -

- 99% of portfolios are
bleeding cash. +
+
+ The Broken Model +

+ 99% of portfolios are
bleeding cash.

-
+

Investors pay renewal fees for years, hoping for a "Unicorn" sale that never happens. It's gambling, not investing.

@@ -267,29 +266,29 @@ export default function HomePage() {
-
- The Pounce Protocol -

Asset Class V2.0

-
    -
  • - +
    + The Pounce Protocol +

    Asset Class V2.0

    +
      +
    • +
      Deep Recon - Zone file analysis reveals what's truly valuable. Don't guess. Know. + Zone file analysis reveals what's truly valuable. Don't guess. Know.
    • -
    • - +
    • +
      Frictionless Liquidity - Instant settlement. Verified owners. 0% Commission. + Instant settlement. Verified owners. 0% Commission.
    • -
    • - +
    • +
      Automated Yield - Domains pay for their own renewals via Intent Routing™. + Domains pay for their own renewals via Intent Routing™.
    @@ -299,58 +298,57 @@ export default function HomePage() {

- {/* CORE ARCHITECTURE - 3 Pillars - Mobile optimized */} -
+ {/* CORE ARCHITECTURE - 3 Pillars */} +
{/* Section Header */} -
-
- Core Architecture -

+
+
+ Core Architecture +

The Lifecycle
Engine.

-

+

// INTELLIGENCE_LAYER_ACTIVE
// MARKET_PROTOCOL_READY
// YIELD_GENERATION_STANDBY

- {/* Mobile: Stacked cards with gaps. Desktop: Grid with borders */} -
+
{/* 1. INTELLIGENCE */} -
-
- +
+
+
-
+
Module 01
-

Intelligence

-

+

Intelligence

+

"Identify Targets." We scan 886+ TLDs in real-time to uncover hidden opportunities before the market reacts.

-
-
- +
+
+
-
Global Scan
-
Zone file analysis & expiration monitoring.
+
Global Scan
+
Zone file analysis & expiration monitoring.
-
- +
+
-
Valuation AI
-
Instant fair-market value estimation.
+
Valuation AI
+
Instant fair-market value estimation.
@@ -358,35 +356,35 @@ export default function HomePage() {
{/* 2. MARKET */} -
-
- +
+
+
-
+
Module 02
-

Market

-

+

Market

+

"Secure the Asset." Direct access to liquidity. A verified exchange where assets move instantly, securely, and with 0% commission fees.

-
-
- +
+
+
-
Verified Owners
-
Mandatory DNS verification. No fakes.
+
Verified Owners
+
Mandatory DNS verification. No fakes.
-
- +
+
-
Direct Execution
-
P2P transfers without middlemen.
+
Direct Execution
+
P2P transfers without middlemen.
@@ -394,35 +392,35 @@ export default function HomePage() {
{/* 3. YIELD */} -
-
- +
+
+
-
+
Module 03
-

Yield

-

+

Yield

+

"Deploy the Asset." Our "Intent Routing" engine transforms idle domains into active revenue generators via automated traffic monetization.

-
-
- +
+
+
-
Intent Routing
-
Traffic directed to high-value partners.
+
Intent Routing
+
Traffic directed to high-value partners.
-
- +
+
-
Passive Income
-
Monthly payouts from your portfolio.
+
Passive Income
+
Monthly payouts from your portfolio.
@@ -433,47 +431,45 @@ export default function HomePage() {

- {/* DEEP DIVE: YIELD - Mobile optimized */} -
+ {/* DEEP DIVE: YIELD */} +
-
- The Endgame -

Intent Routing™

-

- We don't build websites. We build signposts. -
- - Our engine detects user intent and routes traffic directly to high-paying partners. +

+ The Endgame +

Intent Routing™

+

+ We don't build websites. We build signposts.
+ Our engine detects user intent (e.g. "kredit.ch" = Loan Search) and routes traffic directly to high-paying partners.

-
+
{/* Step 1 */} -
-
- +
+
+
-

1. Connect

-

Point your nameservers to `ns.pounce.io`. The system takes over instantly.

+

1. Connect

+

Point your nameservers to `ns.pounce.io`. The system takes over instantly.

{/* Step 2 */} -
-
- +
+
+
-

2. Analyze

-

We scan the semantic intent. `zahnarzt-zh.ch` is identified as "Medical Booking Lead".

+

2. Analyze

+

We scan the semantic intent. `zahnarzt-zh.ch` is identified as "Medical Booking Lead".

{/* Step 3 */} -
-
- +
+
+
-

3. Route

-

Traffic is routed to vertical partners. You earn per qualified lead.

+

3. Route

+

Traffic is routed to vertical partners (e.g. Doctolib, Comparis). You earn per qualified lead.

diff --git a/frontend/src/app/terminal/settings/page.tsx b/frontend/src/app/terminal/settings/page.tsx index e3a4d49..376d85c 100644 --- a/frontend/src/app/terminal/settings/page.tsx +++ b/frontend/src/app/terminal/settings/page.tsx @@ -230,11 +230,12 @@ export default function SettingsPage() { { id: 'security' as const, label: 'Security', icon: Shield }, ] + // Mobile Nav - same as Intel page const mobileNavItems = [ { href: '/terminal/radar', label: 'Radar', icon: Target, active: false }, { href: '/terminal/market', label: 'Market', icon: Gavel, active: false }, { href: '/terminal/watchlist', label: 'Watch', icon: Eye, active: false }, - { href: '/terminal/settings', label: 'Settings', icon: Settings, active: true }, + { href: '/terminal/intel', label: 'Intel', icon: TrendingUp, active: false }, ] const drawerNavSections = [ @@ -245,25 +246,30 @@ export default function SettingsPage() { ]}, { title: 'Manage', items: [ { href: '/terminal/watchlist', label: 'Watchlist', icon: Eye }, - { href: '/terminal/sniper', label: 'Sniper', icon: Bell }, + { href: '/terminal/sniper', label: 'Sniper', icon: Target }, ]}, { title: 'Monetize', items: [ - { href: '/terminal/yield', label: 'Yield', icon: Coins }, + { href: '/terminal/yield', label: 'Yield', icon: Coins, isNew: true }, { href: '/terminal/listing', label: 'For Sale', icon: Tag }, ]}, ] return ( -
- {/* Sidebar - Desktop only */} - +
+ {/* Desktop Sidebar */} +
+ +
-
+
{/* ═══════════════════════════════════════════════════════════════════════ */} {/* MOBILE HEADER */} {/* ═══════════════════════════════════════════════════════════════════════ */} -
+
{/* Top Row */}
@@ -271,9 +277,9 @@ export default function SettingsPage() {
Settings
-
- - {tierName} +
+ + {tierName}
@@ -281,17 +287,17 @@ export default function SettingsPage() {
{subscription?.domains_used || 0}
-
Domains
+
Domains
{subscription?.check_frequency === 'realtime' ? '10m' : subscription?.check_frequency === 'hourly' ? '1h' : '24h'}
-
Interval
+
Interval
{subscription?.status || 'active'}
-
Status
+
Status
@@ -355,7 +361,7 @@ export default function SettingsPage() { {/* ═══════════════════════════════════════════════════════════════════════ */} {/* CONTENT */} {/* ═══════════════════════════════════════════════════════════════════════ */} -
+
{/* Profile Tab */} {activeTab === 'profile' && ( @@ -581,96 +587,158 @@ export default function SettingsPage() {
)}
- - {/* ═══════════════════════════════════════════════════════════════════════ */} - {/* MOBILE BOTTOM NAV */} - {/* ═══════════════════════════════════════════════════════════════════════ */} - - - {/* ═══════════════════════════════════════════════════════════════════════ */} - {/* NAVIGATION DRAWER */} - {/* ═══════════════════════════════════════════════════════════════════════ */} - {menuOpen && ( - <> -
setMenuOpen(false)} /> -
-
-
- Pounce - Terminal v1.0 -
- -
- -
- {drawerNavSections.map((section) => ( -
-
- {section.title} -
- {section.items.map((item) => ( - setMenuOpen(false)} - className="flex items-center gap-3 px-4 py-2.5 text-white/60 hover:text-white hover:bg-white/[0.03] transition-colors" - > - - {item.label} - - ))} -
- ))} -
- -
-
-
- -
-
-

{user?.name || user?.email}

-

{tierName}

-
-
- + {item.active && ( +
+ )} + + {item.label} + + ))} + + +
+ + + {/* ═══════════════════════════════════════════════════════════════════════ */} + {/* MOBILE DRAWER */} + {/* ═══════════════════════════════════════════════════════════════════════ */} + {menuOpen && ( +
+
setMenuOpen(false)} + /> + +
+ +
+
+ Pounce +
+

Pounce

+

Terminal v1.0

+
+
+ +
+ +
+ {drawerNavSections.map((section) => ( +
+
+
+ {section.title} +
+
+ {section.items.map((item: any) => ( + setMenuOpen(false)} + className="flex items-center gap-3 px-4 py-2.5 text-white/60 active:text-white active:bg-white/[0.03] transition-colors border-l-2 border-transparent active:border-accent" + > + + {item.label} + {item.isNew && ( + NEW + )} + + ))} +
+
+ ))} + +
+ setMenuOpen(false)} + className="flex items-center gap-3 py-2.5 text-accent transition-colors" + > + + Settings + + + {user?.is_admin && ( + setMenuOpen(false)} + className="flex items-center gap-3 py-2.5 text-amber-500/70 active:text-amber-400 transition-colors" + > + + Admin + + )} +
+
+ +
+
+
+ +
+
+

+ {user?.name || user?.email?.split('@')[0] || 'User'} +

+

{tierName}

+
+
+ + {tierName === 'Scout' && ( + setMenuOpen(false)} + className="flex items-center justify-center gap-2 w-full py-2.5 bg-accent text-black text-xs font-bold uppercase tracking-wider active:scale-[0.98] transition-all mb-2" + > + + Upgrade + + )} + + +
- - )} + )} +
) }