77 Commits

Author SHA1 Message Date
ee4266d8f0 perf: phase 1 db migrations, persisted scores, admin join, dashboard summary 2025-12-12 11:54:08 +01:00
2e8ff50a90 perf: phase 0 scheduler split, market feed paging, health cache, price tracker 2025-12-12 11:40:53 +01:00
4119cf931a feat: Add Sniper Alerts feature
- Implement complete Sniper Alerts UI page with create/edit/delete
- Add tier-based limits (Scout=2, Trader=10, Tycoon=50 alerts)
- Add Sniper navigation to sidebar
- Support advanced filtering (TLDs, keywords, length, price, bids)
- Support SMS notifications for Tycoon tier
- Show active alerts with match counts and statistics
- Real-time toggle for activating/pausing alerts

Settings page already complete with:
- Profile management
- Notification preferences
- Billing/subscription (Stripe Portal)
- Security settings
- Price alerts management
2025-12-12 10:49:10 +01:00
fffbc4747a feat: Portfolio Sell Wizard & Tier-based Limits
Some checks failed
CI / Frontend Lint & Type Check (push) Has been cancelled
CI / Frontend Build (push) Has been cancelled
CI / Backend Lint (push) Has been cancelled
CI / Backend Tests (push) Has been cancelled
CI / Docker Build (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
Deploy / Build & Push Images (push) Has been cancelled
Deploy / Deploy to Server (push) Has been cancelled
Deploy / Notify (push) Has been cancelled
- Add 3-step sell wizard modal in Portfolio (Details → DNS Verify → Done)
- Implement DNS TXT verification for domain ownership
- Remove Marketplace button from For Sale page
- Show clear tier-based limits everywhere:
  - Watchlist: Scout=5, Trader=50, Tycoon=500
  - Listings: Scout=0, Trader=5, Tycoon=50
- Add plan comparison in For Sale upgrade section
- Prevent selling if listing limit reached
- Add copy-to-clipboard for DNS records
2025-12-12 10:29:47 +01:00
ffcd47e61d feat: Watchlist mit Portfolio-Tab vereint
- Portfolio-Seite gelöscht (zu komplex für Phase 1)
- Watchlist hat nun 2 Tabs: 'Watching' + 'My Portfolio'
- Portfolio nutzt gleiche Monitoring-Infrastruktur wie Watchlist
  - Gleiche Health-Checks (healthReports)
  - Gleiche Expiry-Tracking (expiration_date)
  - Gleiche Alert-Toggles (notify_on_available)
  - Gleiche Refresh/Delete Funktionen
- Portfolio zeigt nur nicht-verfügbare Domains (= owned domains)
- Konzept-konform: Eine Seite mit zwei Tabs statt zwei Module
- Konsistente Daten und Verhalten in beiden Tabs
2025-12-12 08:05:51 +01:00
7a02ea364f feat(watchlist): add tabs for Watching vs My Portfolio
- Sidebar: treat Portfolio as sub-view of WATCHLIST instead of separate nav item
- WATCHLIST header: add tab switcher (Watching ↔ My Portfolio) to match Terminal concept
- PORTFOLIO header: mirror the same tabs so users can jump back to Watchlist
2025-12-12 06:52:42 +01:00
7c9e157fe9 feat(intel): improve TLD filters + load more data
- Geo filter now uses backend type='ccTLD' instead of hardcoded list
- Tech filter expanded with more tech-related TLDs
- Load 500 TLDs instead of 100 for better coverage
2025-12-11 22:38:54 +01:00
0655692c9e fix(market): live time calculation + cleanup dead /intelligence redirect
- Calculate time_remaining live from end_time ISO string (UTC)
  instead of using static backend string. This ensures time is
  always accurate even if page stays open for hours.
- Remove /intelligence redirect page (was only a redirect to /tld-pricing)
- Add getSecondsUntilEnd() and calcTimeRemaining() helpers
2025-12-11 22:37:39 +01:00
9febdf8332 feat(scraping): server-only ops + stronger freshness guards
- Run auction cleanup every 5 minutes and treat end_time <= now as ended
- Add admin endpoints to upload/inspect Playwright cookies (free alternative to paid proxies)
- Add client-side guardrail to never render ended auctions in Terminal Market
2025-12-11 22:23:00 +01:00
dc77b2110a feat: Complete Watchlist monitoring, Portfolio tracking & Listings marketplace
## Watchlist & Monitoring
-  Automatic domain monitoring based on subscription tier
-  Email alerts when domains become available
-  Health checks (DNS/HTTP/SSL) with caching
-  Expiry warnings for domains <30 days
-  Weekly digest emails
-  Instant alert toggle (optimistic UI updates)
-  Redesigned health check overlays with full details
- 🔒 'Not public' display for .ch/.de domains without public expiry

## Portfolio Management (NEW)
-  Track owned domains with purchase price & date
-  ROI calculation (unrealized & realized)
-  Domain valuation with auto-refresh
-  Renewal date tracking
-  Sale recording with profit calculation
-  List domains for sale directly from portfolio
-  Full portfolio summary dashboard

## Listings / For Sale
-  Renamed from 'Portfolio' to 'For Sale'
-  Fixed listing limits: Scout=0, Trader=5, Tycoon=50
-  Featured badge for Tycoon listings
-  Inquiries modal for sellers
-  Email notifications when buyer inquires
-  Inquiries column in listings table

## Scrapers & Data
-  Added 4 new registrar scrapers (Namecheap, Cloudflare, GoDaddy, Dynadot)
-  Increased scraping frequency to 2x daily (03:00 & 15:00 UTC)
-  Real historical data from database
-  Fixed RDAP/WHOIS for .ch/.de domains
-  Enhanced SSL certificate parsing

## Scheduler Jobs
-  Tiered domain checks (Scout=daily, Trader=hourly, Tycoon=10min)
-  Daily health checks (06:00 UTC)
-  Weekly expiry warnings (Mon 08:00 UTC)
-  Weekly digest emails (Sun 10:00 UTC)
-  Auction cleanup every 15 minutes

## UI/UX Improvements
-  Removed 'Back' buttons from Intel pages
-  Redesigned Radar page to match Market/Intel design
-  Less prominent check frequency footer
-  Consistent StatCard components across all pages
-  Ambient background glows
-  Better error handling

## Documentation
-  Updated README with monitoring section
-  Added env.example with all required variables
-  Updated Memory Bank (activeContext.md)
-  SMTP configuration requirements documented
2025-12-11 16:57:28 +01:00
6a6e2460d5 feat: Unified Market Feed API + Pounce Direct Integration
🚀 MARKET CONCEPT IMPLEMENTATION

Backend:
- Added /auctions/feed unified endpoint combining Pounce Direct + external auctions
- Implemented Pounce Score v2.0 with market signals (length, TLD, bids, age)
- Added vanity filter for premium domains (non-auth users)
- Integrated DomainListing model for Pounce Direct

Frontend:
- Refactored terminal/market page with Pounce Direct hierarchy
- Updated public auctions page with Pounce Exclusive section
- Added api.getMarketFeed() to API client
- Converted /market to redirect to /auctions

Documentation:
- Created MARKET_CONCEPT.md with full unicorn roadmap
- Created ZONE_FILE_ACCESS.md with Verisign access guide
- Updated todos and progress tracking

Cleanup:
- Deleted empty legacy folders (dashboard, portfolio, settings, watchlist, careers)
2025-12-11 08:59:50 +01:00
5857123ed5 style: Unify Terminal backgrounds & redesign TLD detail page
- Remove all hardcoded 'bg-black' backgrounds from Terminal pages
- Let global background with emerald glow shine through
- Redesign TLD detail page to match Market/Radar/Intel style
- Use consistent StatCards, glassmorphism containers, and spacing
- Improve Quick Check section on TLD detail page
- Unify Watchlist and Listing page backgrounds for consistency
2025-12-11 08:40:18 +01:00
254c2b2cf0 fix: Tooltip behavior & Links (INTEL, MARKET, RADAR)
Changes:
- Fixed hover/tooltip issue: Tooltips now only trigger on the specific element, not the entire row.
- Added explicit 'Details' link to TLD table in INTEL view.
- Added clickable TLD badges in INTEL view.
- Standardized Tooltip implementation across all views.
- Ensured consistent 'Award-Winning' style for all interactive elements.
2025-12-11 08:08:28 +01:00
cfbc84387a feat: INTEL - Complete Redesign (Award-Winning Style)
Changes:
- Rebuilt INTEL (Analytics) page to match Market/Radar style
- Features:
  - 'Emerald Glow' background effect
  - High-end Stat Cards grid
  - Integrated header with 'Pill' style filters
  - Advanced Data Table with:
    - Renewal Trap warnings (Amber alert if >1.5x reg price)
    - Trend indicators (Sparklines/Arrows)
    - Risk Level meters (Visual bars)
- Mobile Optimization:
  - Elegant Card layout for small screens
  - Touch-friendly controls
2025-12-11 08:01:24 +01:00
0cb60fe776 feat: RADAR & MARKET - Content Integration & Award-Winning Search
Changes:
- TerminalLayout:
  - Added 'hideHeaderSearch' prop to remove top bar elements
  - Header is now non-sticky and transparent when search is hidden for seamless integration
- RADAR (Dashboard):
  - Removed top bar search/shortcuts
  - Implemented 'Hero Style' Universal Search:
    - Floating design with backdrop blur
    - Dynamic emerald glow on focus
    - Animated icons and clean typography
    - Integrated results dropdown
  - Content flows seamlessly from top
- MARKET:
  - Integrated header into content (removed sticky behavior)
  - Removed duplicate search/shortcuts from top bar
2025-12-11 07:41:10 +01:00
7f2910e636 feat: RADAR - Complete Redesign (Award-Winning Style)
Changes:
- Rebuilt Dashboard/Radar page from scratch to match Market style
- Features:
  - New 'Ticker' component with clean, borderless design
  - High-end 'StatCard' grid
  - 'Universal Search' command center with emerald glow
  - Split view: Market Pulse vs Watchlist Activity
- Visuals:
  - Dark zinc-950/40 backgrounds
  - Ultra-thin borders (white/5)
  - Consistent tooltips and hover effects
- Mobile optimized layout
2025-12-11 07:33:59 +01:00
6da0eb4164 feat: MARKET & NAV - High-End Polish
Changes:
- MARKET: Re-introduced 'Emerald Glow' background effect (Landing Page style)
- NAVIGATION: Complete redesign of Sidebar to match Award-Winning style
  - Darker, cleaner background (zinc-950)
  - Ultra-thin borders (white/5)
  - New active state: subtle emerald glow line + text color (no blocky backgrounds)
  - Simplified Logo section
  - Modernized User Profile card
2025-12-11 07:27:40 +01:00
8e2adfac0a feat: MARKET - Award-Winning Polish (Tooltips & UX)
Changes:
- Added custom animated Tooltip component for Low Noise / High Density
- Tooltips added to: Score, Price, Time, Source, Actions, Headers
- Redesigned 'Monitor' button:
  - Changed icon to 'Eye' (Watch)
  - Made it round and distinct from primary action
  - Added significant spacing (mr-4) from 'Buy' button
- Enhanced Mobile UX:
  - Larger touch targets (h-9 to h-10 equivalents)
  - Better button active states (scale-95)
- General Polish:
  - Refined hover states and shadows
  - Improved accessibility with cursor hints
2025-12-11 06:56:12 +01:00
e85a5a65a4 feat: MARKET - Final Polish & Mobile Optimization
Changes:
- Implemented responsive layout: Desktop Table vs Mobile Cards
- Desktop: Glassmorphism header, refined spacing, hover effects
- Mobile: Elegant 'Trading Card' layout with optimized touch targets
- Visual: New 'ScoreDisplay' component (Ring for Desktop, Badge for Mobile)
- UX: Sticky search bar on mobile, better empty states
- Polish: Improved typography, consistent borders, micro-interactions
2025-12-11 06:49:15 +01:00
2dbf4e2eb9 feat: MARKET - Complete UI Overhaul (Award-Winning Style)
Changes:
- Redesigned Metric Grid with trend indicators
- New separated Control Bar for search & filters
- High-end Data Grid with ultra-thin borders and hover effects
- Custom SVG 'Score Ring' component for Pounce Score
- Modern typography and spacing
- Removed 'clutter' badges, replaced with minimal indicators
2025-12-11 06:43:21 +01:00
08eeba998c feat: MARKET - Add sortable columns + new Live Feed header style
Changes:
- Sortable columns: Domain, Score, Price, Time Left, Source
- Click column header to sort (asc/desc toggle)
- New header: 'Live Market Feed' with live indicator
- Quick stats pills: total listings, high score count, ending soon
- Visual sort indicators (chevron up/down)
- Default sort: Score descending
2025-12-10 22:45:05 +01:00
b16ab0c33c feat: MARKET - Sortable columns + new header design
- All columns now sortable (Domain, Score, Price, Time, Source)
- Click column header to sort asc/desc
- New professional header with icon, title, and live stats
- Cleaner, more compact design
- Better mobile responsiveness
- Improved filter bar layout
2025-12-10 22:38:53 +01:00
780abf4551 feat: MARKET page complete rebuild - Trading Dashboard design
- Clean, minimalist Trading Dashboard aesthetic
- Filter Bar: Hide Spam (default ON), Pounce Direct Only, TLD dropdown, Price dropdown
- Master Table with 6 columns as per concept:
  1. Domain (with 💎 icon for Pounce Direct)
  2. Pounce Score (0-100, color-coded: green >80, yellow 40-80, red <40)
  3. Price/Bid (with bid count)
  4. Status/Time ( Instant or ⏱️ countdown with urgency colors)
  5. Source (GoDaddy, Sedo, NameJet, DropCatch, Pounce)
  6. Action (Bid/Buy button + Track to Watchlist)
- Advanced Pounce Score algorithm with spam detection
- Professional dark theme with zinc/emerald color scheme
- Responsive grid layout
2025-12-10 22:30:13 +01:00
2297ec5ef9 feat: Sprint 3 - Terminal screens rebuild according to concept
RADAR:
- Added Ticker component for live market movements
- Implemented Universal Search (simultaneous Whois + Auctions check)
- Quick Stats: 3 cards (Watching, Market, My Listings)
- Recent Alerts with Activity Feed

MARKET:
- Unified table with Pounce Score (0-100, color-coded)
- Hide Spam toggle (default: ON)
- Pounce Direct Only toggle
- Source badges (GoDaddy, Sedo, Pounce)
- Status/Time column with Instant vs Countdown

INTEL:
- Added Cheapest At column (Best Registrar Finder)
- Renamed to Intel
- Inflation Monitor with renewal trap warnings

WATCHLIST:
- Tabs: Watching / My Portfolio
- Health Status Ampel (🟢🟡🔴)
- Improved status display

LISTING:
- Scout paywall (only Trader/Tycoon can list)
- Tier limits: Trader=5, Tycoon=50
- DNS Verification workflow
2025-12-10 22:21:35 +01:00
5b200a21bc cleanup: Remove old Command Center files and fix all references
- Removed old folders: dashboard, pricing, auctions, marketplace, portfolio, alerts, seo
- Removed CommandCenterLayout.tsx (replaced by TerminalLayout)
- Fixed all internal links to use new terminal routes
- Updated keyboard shortcuts for new module names
- Fixed welcome page next steps
- Fixed landing page feature links
- Fixed radar page stat cards and links
2025-12-10 21:59:56 +01:00
1b1aea6f07 refactor: Terminal Module Restructure (Sprint 2)
- RADAR: dashboard → /terminal/radar
- MARKET: auctions + marketplace → /terminal/market
- INTEL: pricing → /terminal/intel
- WATCHLIST: watchlist + portfolio → /terminal/watchlist
- LISTING: listings → /terminal/listing

All redirects configured for backwards compatibility.
Updated sidebar navigation with new module names.
2025-12-10 21:44:36 +01:00
bde898e62f refactor: Rename Command Center to Terminal (Sprint 1)
- Renamed /command/* routes to /terminal/*
- Renamed CommandCenterLayout to TerminalLayout
- Updated all internal links
- Added permanent redirects from /command/* to /terminal/*
- Updated Sidebar navigation
- Added concept docs (pounce_*.md)
2025-12-10 21:39:53 +01:00