- If you didn't request a password reset, you can safely ignore this email.
- Your password won't be changed.
+ Didn't request this? Ignore it. Nothing changes.
""",
"email_verification": """
-
Verify Your Email
-
Hi {{ user_name }},
-
Welcome to pounce! Please verify your email address to activate your account:
- You can unsubscribe at any time by clicking the link at the bottom of any email.
+ Unsubscribe anytime with one click.
""",
}
@@ -437,9 +436,9 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject=f"π Domain Available: {domain}",
+ subject=f"π POUNCE NOW: {domain} just dropped",
html_content=html,
- text_content=f"Great news! {domain} is now available for registration. Visit {register_url} to register.",
+ text_content=f"{domain} is available! Grab it now: {register_url}",
)
@staticmethod
@@ -463,12 +462,12 @@ class EmailService:
tld_url=f"https://pounce.ch/tld-pricing/{tld}",
)
- direction = "dropped" if change_percent < 0 else "increased"
+ direction = "down" if change_percent < 0 else "up"
return await EmailService.send_email(
to_email=to_email,
- subject=f"π Price Alert: .{tld} {direction} {abs(change_percent)}%",
+ subject=f"π° .{tld} moved {direction} {abs(change_percent)}%",
html_content=html,
- text_content=f".{tld} price {direction} from ${old_price:.2f} to ${new_price:.2f} at {registrar}.",
+ text_content=f".{tld} is now ${new_price:.2f} (was ${old_price:.2f}) at {registrar}.",
)
# ============== Subscription ==============
@@ -489,9 +488,9 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject=f"β Welcome to pounce {plan_name}!",
+ subject=f"π― {plan_name} unlocked. Let's hunt.",
html_content=html,
- text_content=f"Your {plan_name} subscription is now active. Visit https://pounce.ch/dashboard to get started.",
+ text_content=f"Your {plan_name} plan is active. Start hunting: https://pounce.ch/dashboard",
)
# ============== Digest ==============
@@ -516,7 +515,7 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject="π¬ Your pounce Weekly Digest",
+ subject="π Your week in domains",
html_content=html,
text_content=f"This week: {total_domains} domains monitored, {status_changes} status changes, {price_alerts} price alerts.",
)
@@ -538,9 +537,9 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject="π Reset Your pounce Password",
+ subject="Reset your POUNCE password",
html_content=html,
- text_content=f"Hi {user_name}, reset your password by visiting: {reset_url}. This link expires in 1 hour.",
+ text_content=f"Reset your password: {reset_url} (expires in 1 hour)",
)
@staticmethod
@@ -558,9 +557,9 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject="βοΈ Verify Your pounce Email",
+ subject="Verify your email. Start hunting.",
html_content=html,
- text_content=f"Hi {user_name}, verify your email by visiting: {verification_url}. This link expires in 24 hours.",
+ text_content=f"Verify your POUNCE account: {verification_url}",
)
# ============== Contact Form ==============
@@ -605,9 +604,9 @@ class EmailService:
confirm_sent = await EmailService.send_email(
to_email=email,
- subject="We've received your message - pounce",
+ subject="Got your message. We'll be in touch.",
html_content=confirm_html,
- text_content=f"Hi {name}, we've received your message and will get back to you soon.",
+ text_content=f"Hey {name}, we received your message. Expect a reply within 24-48 hours.",
)
return support_sent # Return whether support email was sent
@@ -623,9 +622,9 @@ class EmailService:
return await EmailService.send_email(
to_email=to_email,
- subject="π Welcome to pounce Insights!",
+ subject="You're on the list. Welcome to POUNCE.",
html_content=html,
- text_content="Welcome to pounce Insights! You'll receive TLD market trends, domain investing tips, and feature announcements.",
+ text_content="Welcome to POUNCE Insights. Expect market moves, strategies, and feature drops. No spam.",
)
diff --git a/frontend/src/app/about/page.tsx b/frontend/src/app/about/page.tsx
index 3d6f141..3389c6b 100644
--- a/frontend/src/app/about/page.tsx
+++ b/frontend/src/app/about/page.tsx
@@ -9,47 +9,47 @@ const values = [
{
icon: Target,
title: 'Precision',
- description: 'Every check, every alert, every data point is accurate and reliable.',
+ description: 'Accurate data. No guesswork. Every check counts.',
},
{
icon: Shield,
title: 'Privacy',
- description: 'Your domain strategy is confidential. We never share or sell your data.',
+ description: 'Your strategy stays yours. We never share or sell data.',
},
{
icon: Zap,
title: 'Speed',
- description: 'Real-time monitoring ensures you never miss a domain opportunity.',
+ description: 'Real-time intel. You see it first.',
},
{
icon: Users,
title: 'Transparency',
- description: 'Clear pricing, honest communication, no hidden fees or surprises.',
+ description: 'Clear pricing. No surprises. Ever.',
},
]
const stats = [
- { value: '500K+', label: 'Domains Monitored' },
+ { value: '500K+', label: 'Domains Tracked' },
{ value: '99.9%', label: 'Uptime' },
- { value: '50ms', label: 'Avg Response Time' },
- { value: '24/7', label: 'Monitoring' },
+ { value: '50ms', label: 'Response Time' },
+ { value: '24/7', label: 'Always On' },
]
const team = [
{
- name: 'Domain Intelligence',
- role: 'Core Feature',
- description: 'Advanced WHOIS and RDAP queries for accurate availability detection.',
+ name: 'Domain Intel',
+ role: 'Core',
+ description: 'WHOIS + RDAP queries. Accurate. Reliable. Always.',
},
{
name: 'Price Tracking',
- role: 'Market Insights',
- description: 'Real-time TLD pricing from major registrars worldwide.',
+ role: 'Market',
+ description: 'Real-time TLD pricing. Know what domains cost.',
},
{
name: 'Instant Alerts',
- role: 'Notifications',
- description: 'Email and webhook notifications the moment domains become available.',
+ role: 'Notify',
+ description: 'Domain drops? You know first. Email or webhook.',
},
]
@@ -72,13 +72,13 @@ export default function AboutPage() {
About pounce
- Domain intelligence,
+ Built for hunters.
- simplified.
+ By hunters.
- We built pounce to give domain investors, businesses, and individuals
- the tools they need to secure high-value domains before anyone else.
+ POUNCE exists for one reason: to give you the edge.
+ Track domains. See opportunities. Move first.
@@ -101,13 +101,12 @@ export default function AboutPage() {
- Our Mission
+ The Mission
- To democratize domain intelligence. We believe everyone should have access to
- professional-grade domain monitoring tools, not just large corporations with
- expensive enterprise solutions. pounce makes it possible to track any domain,
- understand market trends, and act fast when opportunities arise.
+ Level the playing field. Domain intel shouldn't be locked behind enterprise
+ paywalls. With POUNCE, anyone can track domains, spot trends, and strike
+ when the iron's hot. Simple tools. Powerful results.
- Sign in to access your watchlist
+ Sign in to your account
diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx
index 1427faa..c14b24c 100644
--- a/frontend/src/app/page.tsx
+++ b/frontend/src/app/page.tsx
@@ -14,23 +14,23 @@ import clsx from 'clsx'
const features = [
{
icon: Eye,
- title: 'Continuous Monitoring',
- description: 'Automated WHOIS and DNS queries check your domains daily.',
+ title: 'Always Watching',
+ description: 'Daily scans. 886+ TLDs. You sleep, we hunt.',
},
{
icon: Bell,
- title: 'Instant Notifications',
- description: 'Get notified the moment a domain becomes available.',
+ title: 'Instant Alerts',
+ description: 'Domain drops? You know first. Always.',
},
{
icon: Clock,
- title: 'Expiration Tracking',
- description: 'Track expiration dates and plan ahead for domain drops.',
+ title: 'Expiry Intel',
+ description: 'See when domains expire. Plan your move.',
},
{
icon: Shield,
- title: 'Private & Secure',
- description: 'Self-hosted infrastructure. Your strategy stays confidential.',
+ title: 'Your Strategy, Private',
+ description: 'No one sees your watchlist. Ever.',
},
]
@@ -39,16 +39,16 @@ const tiers = [
name: 'Scout',
price: '0',
period: '',
- description: 'Explore the domain market',
+ description: 'Test the waters. Zero risk.',
features: ['5 domains', 'Daily checks', 'Email alerts', 'Basic search'],
- cta: 'Start Free',
+ cta: 'Hunt Free',
highlighted: false,
},
{
name: 'Trader',
price: '19',
period: '/mo',
- description: 'For serious domain investors',
+ description: 'Hunt with precision.',
features: ['50 domains', 'Hourly checks', 'SMS alerts', 'Domain valuation', 'Portfolio tracking'],
cta: 'Start Trading',
highlighted: true,
@@ -57,7 +57,7 @@ const tiers = [
name: 'Tycoon',
price: '49',
period: '/mo',
- description: 'For professionals & agencies',
+ description: 'Dominate the market.',
features: ['500 domains', 'Real-time checks', 'API access', 'SEO metrics', 'Bulk tools'],
cta: 'Go Tycoon',
highlighted: false,
@@ -165,14 +165,14 @@ export default function HomePage() {
{/* Main Headline - RESPONSIVE */}
- The domains you want.
- The moment they're free.
+ Others wait.
+ You pounce.
{/* Subheadline - RESPONSIVE */}
- Monitor any domain. Track expiration dates. Get notified instantly
- when your target domains become available for registration.
+ Domain intelligence for the decisive. Track any domain.
+ Know the moment it drops. Move before anyone else.
- Track how domain extension prices evolve. Compare registrars.
+ See price movements. Spot opportunities. Act fast.
@@ -299,10 +299,10 @@ export default function HomePage() {
How It Works
- Professional domain intelligence
+ Built for hunters.
- Everything you need to secure high-value domains before anyone else.
+ The tools that give you the edge. Simple. Powerful. Decisive.
@@ -336,10 +336,10 @@ export default function HomePage() {
Pricing
- Simple, transparent plans
+ Pick your weapon.
- Start free. Upgrade as your portfolio grows.
+ Start free. Scale when you're ready.
diff --git a/frontend/src/app/pricing/page.tsx b/frontend/src/app/pricing/page.tsx
index 2ad9c4d..da3bde2 100644
--- a/frontend/src/app/pricing/page.tsx
+++ b/frontend/src/app/pricing/page.tsx
@@ -17,15 +17,15 @@ const tiers = [
icon: Zap,
price: '0',
period: '',
- description: 'Explore the domain market',
+ description: 'Test the waters. Zero risk.',
features: [
- { text: '5 domains in watchlist', highlight: false },
- { text: 'Daily availability checks', highlight: false },
- { text: 'Email notifications', highlight: false },
- { text: 'Basic domain search', highlight: false },
+ { text: '5 domains to track', highlight: false },
+ { text: 'Daily availability scans', highlight: false },
+ { text: 'Email alerts', highlight: false },
+ { text: 'Basic search', highlight: false },
{ text: 'TLD price overview', highlight: false },
],
- cta: 'Start Free',
+ cta: 'Hunt Free',
highlighted: false,
badge: null,
isPaid: false,
@@ -36,14 +36,14 @@ const tiers = [
icon: TrendingUp,
price: '19',
period: '/mo',
- description: 'For serious domain investors',
+ description: 'Hunt with precision. Daily intel.',
features: [
- { text: '50 domains in watchlist', highlight: true },
- { text: 'Hourly availability checks', highlight: true },
+ { text: '50 domains to track', highlight: true },
+ { text: 'Hourly scans', highlight: true },
{ text: 'SMS & Telegram alerts', highlight: true },
- { text: 'Full TLD market data', highlight: false },
+ { text: 'Full market data', highlight: false },
{ text: 'Domain valuation', highlight: true },
- { text: 'Portfolio tracking (25 domains)', highlight: true },
+ { text: 'Portfolio (25 domains)', highlight: true },
{ text: '90-day price history', highlight: false },
],
cta: 'Start Trading',
@@ -57,12 +57,12 @@ const tiers = [
icon: Crown,
price: '49',
period: '/mo',
- description: 'For professionals & agencies',
+ description: 'Dominate the market. No limits.',
features: [
- { text: '500 domains in watchlist', highlight: true },
- { text: 'Real-time checks (10 min)', highlight: true },
+ { text: '500 domains to track', highlight: true },
+ { text: 'Real-time scans (10 min)', highlight: true },
{ text: 'Priority alerts + Webhooks', highlight: true },
- { text: 'Full REST API access', highlight: true },
+ { text: 'Full REST API', highlight: true },
{ text: 'SEO metrics (DA/PA)', highlight: true },
{ text: 'Unlimited portfolio', highlight: true },
{ text: 'Bulk import/export', highlight: true },
@@ -70,7 +70,7 @@ const tiers = [
],
cta: 'Go Tycoon',
highlighted: false,
- badge: 'Best Value',
+ badge: 'Full Power',
isPaid: true,
},
]
@@ -88,16 +88,16 @@ const comparisonFeatures = [
const faqs = [
{
- q: 'How does domain monitoring work?',
- a: 'We perform automated WHOIS, RDAP and DNS queries on your watchlist domains. When a domain becomes available or its status changes, you\'ll receive an instant notification via your preferred channel.',
+ q: 'How fast will I know when a domain drops?',
+ a: 'Depends on your plan. Scout: daily. Trader: hourly. Tycoon: every 10 minutes. When it drops, you\'ll know.',
},
{
- q: 'What is domain valuation?',
- a: 'Our valuation algorithm analyzes factors like domain length, TLD popularity, keyword value, brandability, and comparable sales to estimate a domain\'s market value.',
+ q: 'What\'s domain valuation?',
+ a: 'Our algorithm scores domains on length, TLD value, keywords, and brandability. Know what a domain is worth before you buy.',
},
{
q: 'Can I track domains I already own?',
- a: 'Yes! With Trader and Tycoon plans, you can add domains to your portfolio to track their value, renewal dates, and overall ROI.',
+ a: 'Absolutely. Trader and Tycoon plans include portfolio tracking. See value changes, renewal dates, and ROI at a glance.',
},
{
q: 'How accurate is the SEO data?',
@@ -199,10 +199,10 @@ export default function PricingPage() {
Pricing
- Invest in your domain strategy
+ Pick your weapon.
- From hobbyist to professional domainer. Choose the plan that matches your ambition.
+ Casual observer or full-time hunter? We've got you covered.
{/* Error Message */}
diff --git a/frontend/src/app/register/page.tsx b/frontend/src/app/register/page.tsx
index 3585dc2..00399be 100644
--- a/frontend/src/app/register/page.tsx
+++ b/frontend/src/app/register/page.tsx
@@ -21,10 +21,10 @@ function Logo() {
}
const benefits = [
- 'Monitor up to 3 domains free',
- 'Daily availability checks',
- 'Instant email notifications',
- 'Track expiration dates',
+ 'Track up to 5 domains. Free.',
+ 'Daily scans. You never miss a drop.',
+ 'Instant alerts. Know first.',
+ 'Expiry intel. Plan your move.',
]
export default function RegisterPage() {
@@ -69,9 +69,9 @@ export default function RegisterPage() {
{/* Header */}
-
Create your account
+
Join the hunt.
- Start monitoring domains in under a minute
+ Start tracking domains in under a minute
@@ -128,7 +128,7 @@ export default function RegisterPage() {
) : (
<>
- Get Started
+ Start Hunting
>
)}
@@ -150,11 +150,11 @@ export default function RegisterPage() {
- Free Plan Included
+ Free Forever
- Everything you need to get started
+ Your hunting gear. Ready to go.
diff --git a/frontend/src/app/tld-pricing/page.tsx b/frontend/src/app/tld-pricing/page.tsx
index fb7a219..ef5885c 100644
--- a/frontend/src/app/tld-pricing/page.tsx
+++ b/frontend/src/app/tld-pricing/page.tsx
@@ -272,13 +272,13 @@ export default function TldPricingPage() {
- TLD Price Intelligence
+ Market Intel
- Domain Extension Pricing
+ {pagination.total}+ TLDs. Live Prices.
- Track price trends across {pagination.total}+ TLDs. Compare prices and monitor trends over time.
+ See what domains cost. Spot trends. Find opportunities.
@@ -290,9 +290,9 @@ export default function TldPricingPage() {
-
Unlock Full TLD Data
+
See the full picture
- Sign in to see detailed pricing, charts, and trends.
+ Sign in for detailed pricing, charts, and trends.
@@ -301,7 +301,7 @@ export default function TldPricingPage() {
className="shrink-0 px-5 py-2.5 bg-accent text-background text-ui font-medium rounded-lg
hover:bg-accent-hover transition-all duration-300"
>
- Get Started Free
+ Hunt Free
)}
@@ -311,7 +311,7 @@ export default function TldPricingPage() {