44 Commits

Author SHA1 Message Date
4eb0714542 fix: Remove duplicate ChevronDown import in PremiumTable 2025-12-10 16:53:02 +01:00
a653f98caf style: Improve Command Center header padding and hero section
COMMAND CENTER HEADER:
- Changed from fixed h-16/h-18 to py-5/py-6 for more breathing room
- More vertical padding gives titles more presence

LANDING PAGE HERO SECTION:
- Reduced top padding from pt-32/40/48 to pt-24/32/36
- Smaller puma logo: w-32/40/48 (was w-40/52/64)
- Smaller headline: 2rem-4rem (was 2.5rem-6.5rem)
- More compact spacing overall
- Reduced max-width from 5xl to 4xl for better focus

DOMAIN CHECKER (more prominent):
- Removed px-4 wrapper, full max-w-2xl
- Always-visible glow effect (opacity-60, opacity-100 on focus)
- Larger padding: py-5/6 (was py-4/5)
- Ring-2 on focus (was ring-1)
- Shadow-2xl with accent shadow
- Button: bg-accent instead of bg-foreground
- Button text: 'Hunt' instead of 'Check'
- Larger icons on desktop
- Accent-colored example domains
- Added glow wrapper in landing page

RESULT:
- Search field is now the visual center of the hero
- More compact, action-focused above-the-fold
- Better hierarchy: logo → headline → search
2025-12-10 16:50:49 +01:00
249c82976d feat: Add reusable filter/search components for consistency
NEW COMPONENTS in PremiumTable.tsx:

1. SearchInput
   - Consistent search box styling across all pages
   - Left-aligned search icon
   - Clear button (X) when text entered
   - Props: value, onChange, placeholder, onClear

2. TabBar
   - Consistent tab styling with counts
   - Support for accent/warning/default colors
   - Optional icons
   - Wraps on mobile
   - Props: tabs[], activeTab, onChange

3. FilterBar
   - Simple flex container for filter rows
   - Responsive: stacks on mobile, row on desktop
   - Props: children

4. SelectDropdown
   - Consistent select styling
   - Custom chevron icon
   - Props: value, onChange, options[]

5. ActionButton
   - Consistent button styling
   - Variants: primary (accent), secondary (outlined), ghost
   - Sizes: default, small
   - Optional icon
   - Props: children, onClick, disabled, variant, size, icon

These components ensure visual consistency across all
Command Center pages for search, filtering, and actions.
2025-12-10 16:30:38 +01:00
a73d8d3897 refactor: Consistent max-width for Command Center header and content
LAYOUT CHANGES:

1. CommandCenterLayout header now uses max-w-7xl:
   - Header width matches content width exactly
   - Added mx-auto for centering
   - Cleaner, more consistent visual alignment

2. Main content area:
   - max-w-7xl and centering now in layout wrapper
   - Consistent padding: py-6 sm:py-8

3. PageContainer simplified:
   - Removed max-w-7xl mx-auto (now in parent)
   - Just provides space-y-6 for child spacing

4. Header bar improvements:
   - Slightly reduced height: h-16 sm:h-18
   - Better button styling (hover states)
   - Truncation for long titles on mobile
   - Icons slightly larger for better visibility

RESULT:
All Command Center pages now have perfectly aligned
header and content with the same max-width (max-w-7xl).
2025-12-10 16:29:28 +01:00
a41e28c420 fix: Seamless user journey for register/login/Stripe
PROBLEM: Redirect parameters were getting lost during user flows

FIXES APPLIED:

1. Register Page:
   - Default redirect: /command/dashboard (was /dashboard)
   - Stores redirect in localStorage before email verification
   - Preserves redirect when linking to login page

2. Login Page:
   - Checks localStorage for stored redirect (from registration)
   - Clears stored redirect after successful login
   - Uses useState for dynamic redirect handling

3. OAuth Callback:
   - Default redirect: /command/dashboard (was /dashboard)
   - Backend OAuth endpoints also updated

4. Fixed all /dashboard → /command/dashboard links:
   - pricing/page.tsx
   - page.tsx (landing page)
   - AdminLayout.tsx
   - DomainChecker.tsx
   - command/dashboard/page.tsx
   - Header.tsx (simplified check)

5. Backend OAuth:
   - Default redirect_path: /command/dashboard

NEW USER JOURNEY:

Pricing → Register → Email Verify → Login → Pricing → Stripe
                                                    ↓
                                            Welcome Page
                                                    ↓
                                              Dashboard

The redirect is preserved throughout:
- Query param ?redirect=/pricing passed through register/login
- Stored in localStorage during email verification gap
- Cleaned up after successful login

STRIPE FLOW CLARIFICATION:
- Stripe does NOT create users
- Users must register FIRST with email/password
- Then they can upgrade via Stripe checkout
- This is by design for security and flexibility
2025-12-10 16:23:16 +01:00
2f2a5218df fix: Remove serif font (font-display) from Command Center
CHANGED font-display → font-semibold:

Command Center Pages:
- alerts/page.tsx: Matches count, notifications, modal title
- marketplace/page.tsx: Listing price
- portfolio/page.tsx: Valuation price
- listings/page.tsx: Price display, modal titles (2)
- seo/page.tsx: Feature title, SEO score, backlinks count

Components (used in Command Center):
- CommandCenterLayout.tsx: Page title
- AdminLayout.tsx: Page title
- PremiumTable.tsx: StatCard value

KEPT serif font (as requested):
- Sidebar.tsx: POUNCE logo only
- Header.tsx: POUNCE logo (public pages)
- Footer.tsx: POUNCE logo

Now the Command Center uses only sans-serif fonts,
with the exception of the POUNCE logo in the navigation.
2025-12-10 16:10:37 +01:00
7578d78568 refactor: Remove emojis + Add Portfolio to Landing Page
EMOJI REMOVAL:
- Replaced 🟢🟡🔴 emojis with CSS circles (bg-accent, bg-amber-400, bg-red-400)
- Updated TLD Pricing pages (public + command)
- Updated Landing Page feature pills
- Updated Admin panel feature checklist

PORTFOLIO FEATURE:
- Added 'Portfolio Health' section to Landing Page under 'Beyond Hunting'
- Highlights: SSL Monitor, Expiry Alerts, Valuation, P&L Tracking
- Links to /command/portfolio
- Uses 'Your Domain Insurance' tagline

Portfolio Status:
- Public Page: N/A (personal feature, no public page needed)
- Command Center:  Fully implemented with Add/Edit/Sell/Valuation
- Admin Panel:  Stats visible in Overview
- Landing Page:  Now advertised in 'Beyond Hunting' section
2025-12-10 14:51:49 +01:00
3ed5a1fc6d feat: Rename 'TLD Intelligence' to 'TLD Pricing' + implement analysis_4.md features
RENAMED:
- 'TLD Intelligence' → 'TLD Pricing' across all files
- /command/intelligence → /command/pricing

NEW FEATURES (from analysis_4.md):
- Renewal Price column + Trap Alert (⚠️ when ratio > 2x)
- 1y/3y Trend columns with % change indicators
- Risk Level badges (🟢 Low, 🟡 Medium, 🔴 High)
- Category tabs: All, Tech, Geo, Budget, Premium
- Sparklines for visual trend indication
- Blur effect on premium columns for non-authenticated users
- First 5 rows visible free, rest blurred with CTA

FILES UPDATED:
- frontend/src/components/Sidebar.tsx (link + label)
- frontend/src/components/Header.tsx (label)
- frontend/src/components/Footer.tsx (label)
- frontend/src/hooks/useKeyboardShortcuts.tsx (routes)
- frontend/src/app/command/dashboard/page.tsx (links)
- frontend/src/app/command/settings/page.tsx (links)
- frontend/src/app/command/pricing/page.tsx (full rewrite)
- frontend/src/app/intelligence/page.tsx (public page, full rewrite)
- frontend/src/app/admin/page.tsx (new TLD Pricing tab)
- frontend/src/app/page.tsx (label update)
2025-12-10 13:29:47 +01:00
76d1d88abc feat: Marketplace command page + SEO disabled state + Pricing update
MARKETPLACE:
- Created /command/marketplace for authenticated users
- Shows all listings with search, sort, and filters
- Grid layout with domain cards, scores, and verification badges
- Links to 'My Listings' for quick access to management

SIDEBAR SEO JUICE:
- Removed 'Tycoon' badge label
- Now shows as disabled/grayed out for non-Tycoon users
- Crown icon indicates premium feature
- Hover tooltip explains feature & upgrade path

PRICING PAGE:
- Added new features to tier cards:
  - Scout: 2 domain listings
  - Trader: 10 listings, 5 Sniper Alerts
  - Tycoon: 50 listings, unlimited alerts, SEO Juice
- Updated comparison table with:
  - For Sale Listings row
  - Sniper Alerts row
  - SEO Juice Detector row
2025-12-10 12:22:01 +01:00
4d51e0023f feat: Split Sidebar into Discover + Manage sections
SIDEBAR RESTRUCTURE:
Section 1 - DISCOVER (External Market Data):
  - Auctions → Live auction feed
  - Marketplace → Browse /buy (public)
  - TLD Intelligence → Market insights

Section 2 - MANAGE (Your Assets & Tools):
  - Dashboard → Overview
  - Watchlist → Tracked domains
  - Portfolio → Owned domains
  - My Listings → Sell domains (manage)
  - Sniper Alerts → Custom notifications
  - SEO Juice → Backlink analysis (Tycoon)

LISTINGS PAGE:
- Simplified to 'My Listings' only (management)
- Added 'Browse Marketplace' button linking to /buy
- Cleaner separation of concerns

This creates a clear distinction:
- Discover = Looking at external data
- Manage = Managing your own stuff
2025-12-10 12:11:09 +01:00
1e6036c03f feat: Marketplace navigation + SEO fix + tab-based listings
MARKETPLACE INTEGRATION:
- Added 'Marketplace' (/buy) to public Header navigation
- Renamed 'For Sale' to 'Marketplace' in Command Center Sidebar

LISTINGS PAGE REDESIGN:
- Added tab-based layout: 'Browse Marketplace' / 'My Listings'
- Browse tab: Search + grid view of all public listings
- My Listings tab: Full management with stats
- Unified experience to view marketplace and manage own listings

SEO JUICE DETECTOR FIX:
- Fixed 500 error when database table doesn't exist
- Added fallback: _format_dict_response for when DB is unavailable
- Service now gracefully handles missing tables
- Returns estimated data even on cache failures
2025-12-10 12:05:49 +01:00
ded6c34100 feat: Add SEO Juice Detector (Tycoon feature)
From analysis_3.md - Strategie 3: SEO-Daten & Backlinks:
'SEO-Agenturen suchen Domains wegen der Power (Backlinks).
Solche Domains sind für SEOs 100-500€ wert, auch wenn der Name hässlich ist.'

BACKEND:
- Model: DomainSEOData for caching SEO metrics
- Service: seo_analyzer.py with Moz API integration
  - Falls back to estimation if no API keys
  - Detects notable links (Wikipedia, .gov, .edu, news)
  - Calculates SEO value estimate
- API: /seo endpoints (Tycoon-only access)

FRONTEND:
- /command/seo page with full SEO analysis
- Upgrade prompt for non-Tycoon users
- Notable links display (Wikipedia, .gov, .edu, news)
- Top backlinks with authority scores
- Recent searches saved locally

SIDEBAR:
- Added 'SEO Juice' nav item with 'Tycoon' badge

DOCS:
- Updated DATABASE_MIGRATIONS.md with domain_seo_data table
- Added SEO API endpoints documentation
- Added Moz API environment variables info
2025-12-10 11:58:05 +01:00
18d50e96f4 feat: Add For Sale Marketplace + Sniper Alerts
BACKEND - New Models:
- DomainListing: For sale landing pages with DNS verification
- ListingInquiry: Contact form submissions from buyers
- ListingView: Analytics tracking
- SniperAlert: Hyper-personalized auction filters
- SniperAlertMatch: Matched auctions for alerts

BACKEND - New APIs:
- /listings: Browse, create, manage domain listings
- /listings/{slug}/inquire: Buyer contact form
- /listings/{id}/verify-dns: DNS ownership verification
- /sniper-alerts: Create, manage, test alert filters

FRONTEND - New Pages:
- /buy: Public marketplace browse page
- /buy/[slug]: Individual listing page with contact form
- /command/listings: Manage your listings
- /command/alerts: Sniper alerts dashboard

FRONTEND - Updated:
- Sidebar: Added For Sale + Sniper Alerts nav items
- Landing page: New features teaser section

DOCS:
- DATABASE_MIGRATIONS.md: Complete SQL for new tables

From analysis_3.md:
- Strategie 2: Micro-Marktplatz (For Sale Pages)
- Strategie 4: Alerts nach Maß (Sniper Alerts)
- Säule 2: DNS Ownership Verification
2025-12-10 11:44:56 +01:00
b3e6c9aef6 refactor: Separate public pages from authenticated Command Center
STRUCTURE:
- Public pages: /auctions, /intelligence (with Header/Footer, no login needed)
- Command Center: /command/* (with Sidebar, login required)
  - /command/dashboard
  - /command/watchlist
  - /command/portfolio
  - /command/auctions
  - /command/intelligence
  - /command/settings

CHANGES:
- Created new /command directory structure
- Public auctions page: shows all auction data, CTA for login
- Public intelligence page: shows TLD data, CTA for login
- Updated Sidebar navigation to point to /command/*
- Updated all internal links (Header, Footer, AdminLayout)
- Updated login redirect to /command/dashboard
- Updated keyboard shortcuts to use /command paths
- Added /command redirect to /command/dashboard
2025-12-10 11:02:27 +01:00
940fd177e7 feat: Comprehensive Command Center improvements
PAGE HEADERS:
- All pages now show dynamic, context-aware subtitles
- Dashboard: Time-based greeting + status summary
- Watchlist: Domain count + slots remaining
- Portfolio: Profit/loss summary
- Auctions: Live count across platforms
- Intelligence: TLD count or loading state

TABLE IMPROVEMENTS:
- Fixed column alignments with table-fixed layout
- Added width constraints for consistent column sizing
- Better header button alignment for sortable columns
- tabular-nums for numeric values

DOMAIN HEALTH INTEGRATION:
- Added getDomainHealth and quickHealthCheck API methods
- Health status types (healthy, weakening, parked, critical)
- Health check button in watchlist with modal view
- 4-layer analysis display (DNS, HTTP, SSL, recommendations)
- Optional chaining to prevent undefined errors

UI FIXES:
- Consistent card and section styling
- Improved filter/tab buttons
- Better empty states
- Search with clear button
2025-12-10 10:45:38 +01:00
20f43dbc8d refactor: Consistent styling across all Command Center pages
CHANGES:
- All pages now use PageContainer (max-w-7xl) for consistent width
- Unified StatCard component usage across all pages
- All tables now use PremiumTable with consistent styling
- Consistent filter/tab design across pages
- Updated SectionHeader with compact mode option
- Consistent card styling with backdrop blur effects
- Unified form input styling across all pages
- Settings page redesigned with consistent card layouts

PAGES UPDATED:
- Dashboard: PageContainer, SectionHeader, StatCard integration
- Watchlist: Full redesign with PremiumTable
- Portfolio: Full redesign with PremiumTable
- Settings: Consistent card styling and layout
- Auctions & Intelligence: Already using consistent components
2025-12-10 10:34:23 +01:00
b66c3b360d feat: Complete redesign of user and admin backend with consistent styling
USER BACKEND:
- Created PremiumTable component with elegant gradient styling
- All pages now use consistent max-w-7xl width via PageContainer
- Auctions page integrated into CommandCenterLayout with full functionality
- Intelligence page updated with PremiumTable and StatCards
- Added keyboard shortcuts system (press ? to show help):
  - G: Dashboard, W: Watchlist, P: Portfolio, A: Auctions
  - I: Intelligence, S: Settings, N: Add domain, Cmd+K: Search

ADMIN BACKEND:
- Created separate AdminLayout with dedicated sidebar (red theme)
- Admin sidebar with navigation tabs and shortcut hints
- Integrated keyboard shortcuts for admin:
  - O: Overview, U: Users, B: Blog, Y: System, D: Back to dashboard
- All tables use consistent PremiumTable component
- Professional stat cards and status badges

COMPONENTS:
- PremiumTable: Elegant table with sorting, selection, loading states
- Badge: Versatile status badge with variants and dot indicator
- StatCard: Consistent stat display with optional accent styling
- PageContainer: Enforces max-w-7xl for consistent page width
- TableActionButton: Consistent action buttons for tables
- PlatformBadge: Color-coded platform indicators for auctions
2025-12-10 10:23:40 +01:00
7549159204 feat: Professional redesign of user and admin backend
- Redesigned Sidebar with pounce puma logo and elegant premium styling
- Updated CommandCenterLayout with improved top bar styling
- Integrated Admin page into CommandCenterLayout for consistent experience
- Created reusable DataTable component with elegant styling
- Enhanced Dashboard with premium card designs and visual effects
- Improved Watchlist with modern gradient styling
- Added case-insensitive email handling in auth (from previous fix)

All tables now have consistent, elegant styling with:
- Gradient backgrounds
- Subtle borders and shadows
- Hover effects with accent color
- Responsive design
- Status badges and action buttons
2025-12-10 10:14:34 +01:00
6ce926d405 Premium service implementation & Tone of Voice consistency
🚀 PREMIUM DATA COLLECTOR:
- New script: backend/scripts/premium_data_collector.py
- Automated TLD price collection with quality scoring
- Automated auction scraping with validation
- Data quality reports (JSON + console output)
- Premium-ready score calculation (target: 80+)

 CRON AUTOMATION:
- New script: backend/scripts/setup_cron.sh
- TLD prices: Every 6 hours
- Auctions: Every 2 hours
- Quality reports: Daily at 1:00 AM

👤 ADMIN PRIVILEGES:
- guggeryves@hotmail.com always admin + verified
- Auto-creates Tycoon subscription for admin
- Works for OAuth and regular registration

🎯 TONE OF VOICE FIXES:
- 'Get Started Free' → 'Join the Hunt'
- 'Blog' → 'Briefings' (Footer + Pages)
- 'Loading...' → 'Acquiring targets...'
- 'Back to Blog' → 'Back to Briefings'
- Analysis report: TONE_OF_VOICE_ANALYSIS.md (85% consistent)
2025-12-10 09:22:29 +01:00
806a5893af Final polish based on review feedback
- Landing: 'TLD price explorer' → 'Market overview'
- Auctions: Title to 'Curated Opportunities' (no small numbers)
- TLD Pricing: First row (.com) visible without blur for preview
- Footer: Updated branding, simplified, added tagline
- All Sign In links redirect back to original page
2025-12-10 09:03:23 +01:00
cfbc94963a Premium overhaul based on review feedback
- Fix Command Center loading on mobile (add mobile sidebar menu)
- Rename 'Market' to 'Auctions' in navigation (clearer naming)
- Add Vanity Filter for public auctions (hide spam domains)
  - Premium TLDs only for public (.com, .io, .ai, etc.)
  - Max 15 chars, max 1 hyphen, max 2 digits
  - No random consonant strings
- Improve pricing page differentiation
  - Highlight 'Smart spam filter' for Trader
  - Show 'Curated list' vs 'Raw feed'
  - Add sublabels for key features
- Add background effects to Command Center
- Improve responsive design
2025-12-10 08:53:41 +01:00
0447896812 Major navigation overhaul: Add Command Center with Sidebar
- New Sidebar component with collapsible navigation
- New CommandCenterLayout for logged-in users
- Separate routes: /watchlist, /portfolio, /market, /intelligence
- Dashboard with Activity Feed and Market Pulse
- Traffic light status indicators for domain status
- Updated Header for public/logged-in state separation
- Settings page uses new Command Center layout
2025-12-10 08:37:29 +01:00
503ac0f24f feat: Update navigation structure according to concept (Public: Market/TLD Intel, Command Center: Dashboard/Market/Intelligence) 2025-12-10 07:47:30 +01:00
cff0ba0984 feat: Add Admin Panel enhancements, Blog system, and OAuth
Admin Panel:
- User Detail Modal with full profile info
- Bulk tier upgrade for multiple users
- User export to CSV
- Price Alerts overview tab
- Domain Health Check trigger
- Email Test functionality
- Scheduler Status with job info and last runs
- Activity Log for admin actions
- Blog management tab with CRUD

Blog System:
- BlogPost model with full content management
- Public API: list, featured, categories, single post
- Admin API: create, update, delete, publish/unpublish
- Frontend blog listing page with categories
- Frontend blog detail page with styling
- View count tracking

OAuth:
- Google OAuth integration
- GitHub OAuth integration
- OAuth callback handling
- Provider selection on login/register

Other improvements:
- Domain checker with check_all_domains function
- Admin activity logging
- Breadcrumbs component
- Toast notification component
- Various UI/UX improvements
2025-12-09 16:52:54 +01:00
56d5a3f194 refactor: Dashboard & Navigation overhaul
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
DASHBOARD CHANGES:
- Stats cards now all neutral (no colored backgrounds)
- Added limit warning with upgrade CTA when domain limit reached
- Removed TLD Price Intelligence section
- Portfolio now uses table layout like Watchlist
- Consistent styling across both tabs

NAVIGATION OVERHAUL:
- New notification center with dropdown
  - Shows available domains with pulsing indicator
  - Empty state when no notifications
  - Link to manage notifications
- New user dropdown menu
  - Shows user info and plan tier
  - Domain usage (X/Y domains)
  - Quick links to Dashboard, TLD Pricing, Settings
  - Clean logout option
- Dashboard button more prominent
- Plans link hidden when logged in
- Click-outside closes dropdowns

MOBILE:
- User info shown at top of mobile menu
- Plan tier and domain usage visible
- All navigation items accessible
2025-12-09 09:36:25 +01:00
ff67fded34 Fix: Remove trailing whitespace 2025-12-09 07:26:52 +01:00
0de9648b49 fix: Database schema + Remove careers page
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
DATABASE:
- Recreated database tables with all columns (stripe_customer_id, is_admin)
- Fixed login 500 error

REMOVED:
- Careers page deleted
- Careers link removed from Footer

UPDATED:
- Footer description: 'Domain intelligence for hunters. Track. Alert. Pounce.'
2025-12-08 16:51:15 +01:00
fde4f23663 feat: Complete Tone of Voice overhaul - The Hunter's Voice
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
🎯 BRAND VOICE: Swift, Sharp, Strategic, Confident

LANDING PAGE:
- Hero: 'Others wait. You pounce.'
- Features: Active, punchy descriptions
- Pricing: 'Pick your weapon.'
- CTAs: 'Hunt Free', 'Start Trading', 'Go Tycoon'

PRICING PAGE:
- Scout: 'Test the waters. Zero risk.'
- Trader: 'Hunt with precision.'
- Tycoon: 'Dominate the market.'

AUTH PAGES:
- Login: 'Back to the hunt.'
- Register: 'Join the hunt.'
- Benefits: 'Your hunting gear. Ready to go.'

EMAIL TEMPLATES:
- Domain Available: 'Time to pounce. [domain] just dropped'
- Price Alert: '.tld just moved.'
- Weekly Digest: 'Your week in domains.'
- Subscription: 'You're in. [Plan] unlocked.'

DASHBOARD:
- Title: 'Command Center'
- Empty State: 'No targets yet'

TLD PAGES:
- Headline: '886+ TLDs. Live Prices.'
- Section: 'Moving Now' instead of 'Trending'

CONTACT & ABOUT:
- About: 'Built for hunters. By hunters.'
- Mission: 'Level the playing field.'
- Contact: 'Let's Talk' - direct, confident

All text now follows the hunter metaphor with:
- Active verbs (Track, Hunt, Pounce, Grab)
- Urgency without panic
- Confident statements
- Data as proof
- Short, punchy sentences
2025-12-08 16:38:41 +01:00
df4d87a643 feat: Auto-admin for specific email + POUNCE branding
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
- guggeryves@hotmail.com automatically gets admin rights on registration
- Changed navigation logo from 'pounce' to 'POUNCE' (uppercase)
- Adjusted letter-spacing for better visual appearance
2025-12-08 16:10:58 +01:00
b5a0d17689 feat: Complete admin dashboard and improved navigation
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
Navigation Header:
- Playfair Display font for 'pounce' logo (explicit style)
- Perfect vertical centering with h-full on containers
- Consistent text sizes (0.8125rem / 13px)

Admin Dashboard (/admin):
- Overview tab: User stats, subscription breakdown, quick actions
- Users tab: Search, list, upgrade tier, toggle admin
- Newsletter tab: List subscribers, export emails
- TLD tab: Price data stats, trigger manual scrape
- System tab: Health status, environment info

Backend Admin API:
- Added is_admin field to User model
- Admin authentication via require_admin dependency
- GET /admin/stats - Dashboard statistics
- GET/PATCH/DELETE /admin/users - User management
- POST /admin/users/{id}/upgrade - Tier upgrades
- GET /admin/newsletter - Subscriber list
- GET /admin/newsletter/export - Email export
- POST /admin/scrape-tld-prices - Manual TLD scrape
- GET /admin/tld-prices/stats - TLD data statistics
- GET /admin/system/health - System health check
- POST /admin/system/make-admin - Initial admin setup

Frontend API:
- Added AdminApiClient with all admin endpoints
- getAdminStats, getAdminUsers, updateAdminUser
- upgradeUser, getAdminNewsletter, exportNewsletterEmails
- triggerTldScrape, getSystemHealth, makeUserAdmin
2025-12-08 16:05:53 +01:00
1efc7fe28e fix: TypeScript conflicts and improve navigation styling
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
TypeScript Fixes:
- Cleared TypeScript cache to resolve @types/node conflicts
- Reinstalled node_modules with fresh package-lock.json
- Removed duplicate type definitions from cache

Navigation Improvements:
- Logo uses Playfair Display font (same as titles)
- Consistent font-display class for 'pounce' wordmark
- Perfect vertical centering using flex + h-9 for all nav items
- Removed unused Image import
- Unified button/link heights (36px/h-9) for visual consistency
- Improved hover states with consistent sizing
2025-12-08 15:48:44 +01:00
9745d1851f feat: Replace navigation logo with bold text wordmark
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
- Removed puma image from header navigation
- Replaced with bold 'pounce' text wordmark
- Uses Playfair Display font (font-display)
- Responsive sizing: 1.5rem (mobile) to 1.75rem (desktop)
- Clean, minimal, professional appearance
- Removed unused Image import dependency
2025-12-08 15:35:38 +01:00
70c22247cb feat: Add PostHog analytics and improve domain input styling
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
PostHog Integration:
- Added PostHog analytics snippet to layout.tsx
- Project ID: phc_J0Ac94FAcsmbFj0CWOAqo9tGGSE4i9F4LXXfnN796gN
- API Host: https://eu.i.posthog.com
- Person profiles: identified_only

Domain Checker Styling:
- Changed input border from standard border to accent-colored ring
- Unfocused: ring-1 ring-accent/30 (thin green outline)
- Focused: ring-1 ring-accent/60 (brighter green)
- Matches puma logo accent color (#10b981)
- Smooth transitions for better UX
2025-12-08 15:33:41 +01:00
b641ab0b8f fix: Mobile optimization improvements
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
Settings Page:
- Horizontal scrollable tabs on mobile (< lg breakpoint)
- Vertical sidebar on desktop (lg+)
- Hide plan info card on mobile (visible in billing tab)

Header:
- Added Settings link in mobile menu for authenticated users

Global CSS:
- Added scrollbar-hide utility class
- Added smooth scrolling for touch devices
- Added touch-pan-x for horizontal scroll areas
- Removed tap highlight on mobile
- select-none utility class
2025-12-08 15:27:42 +01:00
3ae2ef45d9 feat: Complete all missing functional features
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
Dashboard Improvements:
- Portfolio: Sell Domain Modal mit Profit-Vorschau
- Portfolio: Edit Domain Modal für alle Felder
- Watchlist: Notification Toggle Button (Bell Icon)
- Neue Handler-Funktionen für alle Aktionen

New Pages:
- /settings - Profile, Notifications, Billing, Security
- /blog/[slug] - Blog Detail Page mit Share-Buttons
- /unsubscribe - Newsletter Unsubscribe Seite

Navigation Updates:
- Settings Icon im Header für eingeloggte User
- Unsubscribe Link im Footer (Legal Section)

API Additions:
- updateDomainNotify() für Watchlist-Benachrichtigungen
2025-12-08 15:07:12 +01:00
38a5ebd8a4 feat: Transparent Portfolio Valuation & Smart Pounce Auctions
PORTFOLIO VALUATION (100% Transparent):
- Completely rewritten valuation algorithm with clear formula
- Shows exact calculation: Base × Length × TLD × Keyword × Brand
- Each factor explained with reason (e.g., '4-letter domain ×5.0')
- Real TLD registration costs integrated from database
- Confidence levels: high/medium/low based on score consistency
- Detailed breakdown: scores, factors, calculation steps
- Value-to-cost ratio for investment decisions
- Disclaimer about algorithmic limitations

SMART POUNCE - Auction Aggregator:
- New /auctions page aggregating domain auctions
- Platforms: GoDaddy, Sedo, NameJet, SnapNames, DropCatch
- Features:
  - All Auctions: Search, filter by platform/price/TLD
  - Opportunities: AI-powered undervalued domain detection
  - Ending Soon: Snipe auctions ending in < 1 hour
  - Hot Auctions: Most-bid domains
- Smart opportunity scoring: value_ratio × time_factor × bid_factor
- Affiliate links to platforms (no payment handling = no GwG issues)
- Full legal compliance for Switzerland (no escrow)

API ENDPOINTS:
- GET /auctions - Search all auctions
- GET /auctions/ending-soon - Auctions ending soon
- GET /auctions/hot - Most active auctions
- GET /auctions/opportunities - Smart recommendations (auth required)
- GET /auctions/stats - Platform statistics

UI UPDATES:
- New 'Auctions' link in navigation (desktop + mobile)
- Auction cards with bid info, time remaining, platform badges
- Opportunity analysis with profit potential
- Color-coded time urgency (red < 1h, yellow < 2h)
2025-12-08 13:39:01 +01:00
1a3c057402 fix: Make logo wider and shorter
Logo dimensions:
- Header: 128px (mobile) / 160px (desktop) width, auto height
- Footer: 112px width, auto height
- Login/Register: 112px width, auto height
- Header height reduced to 64px/80px to match

Logo now has landscape orientation with ~10rem width
2025-12-08 10:50:17 +01:00
38607a52e2 fix: Make logo much larger (2x size)
New sizes:
- Header: 80px (mobile) → 96px (desktop) [was 48-56px]
- Header height: Increased to 80px/96px to accommodate logo
- Footer: 64px [was 48px]
- Login/Register: 80px [was 64px]

Logo is now prominently displayed
2025-12-08 10:49:26 +01:00
013758c404 fix: Increase logo sizes significantly
New sizes:
- Header: 48px (mobile) → 56px (desktop) [was 32-36px]
- Footer: 48px [was 40px]
- Login/Register: 64px [was 48px]

Logo is now much more prominent and visible
2025-12-08 10:48:34 +01:00
48368fe026 feat: Replace text logo with puma icon
Changes:
- Added pounce-logo.png to /public
- Updated Header.tsx: Replaced text logo with Image component
- Updated Footer.tsx: Replaced text logo with Image component
- Updated login/page.tsx: Replaced text logo with Image component
- Updated register/page.tsx: Replaced text logo with Image component

Logo sizing:
- Header: 32px (mobile) / 36px (desktop)
- Footer: 40px
- Login/Register: 48px

All logos use Next.js Image component for optimization
2025-12-08 10:47:16 +01:00
9aaf7512ff feat: Holistic app consistency improvements
Fixes:
- Chart hover dot now uses DOM element instead of SVG circle (no more squished dots)
- Chart hover line uses proper stroke-dasharray
- Tooltip positioning improved

New Components:
- Shimmer.tsx: Unified shimmer component for loading/locked states
- 404 Page: Professional not-found page with navigation options

Consistency improvements identified for future:
- All pages now use consistent Header/Footer
- Trend colors standardized (orange=up, green=down)
- Typography system follows design tokens
2025-12-08 10:32:30 +01:00
48b33e9252 Improve UX: Add Footer everywhere, unified max-width, beautiful charts
- Added Footer component to all pages (home, dashboard, TLD pages)
- Changed max-width from 6xl to 7xl for consistent layout
- Enhanced mini-charts with gradients, area fills, and data points
- Better visual hierarchy and spacing
- Consistent design across all pages
2025-12-08 07:46:58 +01:00
d12c5ddfa5 Add Footer component and real TLD history data
- Created reusable Footer component with social links
- Replaced mock data with real API calls for TLD history
- Added Trending TLDs section at top of pricing page
- Mini-charts now display actual 12-month price history
- Improved data authenticity throughout TLD pricing page
2025-12-08 07:38:06 +01:00
9acb90c067 Initial commit: Pounce - Domain Monitoring System
- FastAPI backend mit Domain-Check, TLD-Pricing, User-Management
- Next.js frontend mit modernem UI
- Sortierbare TLD-Tabelle mit Mini-Charts
- Domain availability monitoring
- Subscription tiers (Starter, Professional, Enterprise)
- Authentication & Authorization
- Scheduler für automatische Domain-Checks
2025-12-08 07:26:57 +01:00