diff --git a/TERMINAL_REBUILD_PLAN.md b/TERMINAL_REBUILD_PLAN.md
index 26ebae0..52cb904 100644
--- a/TERMINAL_REBUILD_PLAN.md
+++ b/TERMINAL_REBUILD_PLAN.md
@@ -8,19 +8,16 @@
## π IST vs. SOLL Analyse
-### Aktuelle Struktur (Command Center)
+### Aktuelle Struktur (Terminal) β
IMPLEMENTIERT
```
-/command/
-βββ dashboard/ β Allgemeines Dashboard
-βββ watchlist/ β Domain-Γberwachung
-βββ portfolio/ β Eigene Domains
-βββ listings/ β Verkaufsangebote
-βββ auctions/ β Externe Auktionen
-βββ marketplace/ β Pounce-Marktplatz
-βββ pricing/ β TLD Preise
-βββ alerts/ β Sniper Alerts
-βββ seo/ β SEO Juice (Tycoon)
-βββ settings/ β Einstellungen
+/terminal/
+βββ radar/ β RADAR (Startseite/Dashboard)
+βββ market/ β MARKET (Auktionen + Listings)
+βββ intel/ β INTEL (TLD Pricing)
+β βββ [tld]/ β Detail-Seite pro TLD
+βββ watchlist/ β WATCHLIST (Watching + Portfolio)
+βββ listing/ β LISTING (Verkaufs-Wizard)
+βββ settings/ β SETTINGS (Einstellungen)
βββ welcome/ β Onboarding
```
@@ -47,13 +44,13 @@
- [x] 1.4 Redirect von `/command/*` β `/terminal/*` einrichten
- [x] 1.5 Sidebar-Navigation aktualisieren
-### Phase 2: Module neu strukturieren
-- [ ] 2.1 **RADAR** Module (Dashboard)
-- [ ] 2.2 **MARKET** Module (Auktionen + Listings)
-- [ ] 2.3 **INTEL** Module (TLD Pricing)
-- [ ] 2.4 **WATCHLIST** Module (Watching + Portfolio)
-- [ ] 2.5 **LISTING** Module (Verkaufs-Wizard)
-- [ ] 2.6 **SETTINGS** Module (Admin)
+### Phase 2: Module neu strukturieren β
ABGESCHLOSSEN
+- [x] 2.1 **RADAR** Module (Dashboard β /terminal/radar)
+- [x] 2.2 **MARKET** Module (Auktionen + Listings β /terminal/market)
+- [x] 2.3 **INTEL** Module (TLD Pricing β /terminal/intel)
+- [x] 2.4 **WATCHLIST** Module (Watching + Portfolio β /terminal/watchlist)
+- [x] 2.5 **LISTING** Module (Verkaufs-Wizard β /terminal/listing)
+- [x] 2.6 **SETTINGS** Module (Admin β /terminal/settings)
### Phase 3: UI/UX Verbesserungen
- [ ] 3.1 Global Search (CMD+K) verbessern
diff --git a/frontend/next.config.js b/frontend/next.config.js
index 9f0df75..c7bf240 100644
--- a/frontend/next.config.js
+++ b/frontend/next.config.js
@@ -3,12 +3,13 @@ const nextConfig = {
reactStrictMode: true,
// output: 'standalone', // Only needed for Docker deployment
- // Redirects from old /command/* to new /terminal/*
+ // Redirects from old routes to new Terminal routes
async redirects() {
return [
+ // Old Command Center routes
{
source: '/command',
- destination: '/terminal/dashboard',
+ destination: '/terminal/radar',
permanent: true,
},
{
@@ -16,6 +17,58 @@ const nextConfig = {
destination: '/terminal/:path*',
permanent: true,
},
+ // Dashboard β RADAR
+ {
+ source: '/terminal/dashboard',
+ destination: '/terminal/radar',
+ permanent: true,
+ },
+ // Pricing β INTEL
+ {
+ source: '/terminal/pricing',
+ destination: '/terminal/intel',
+ permanent: true,
+ },
+ {
+ source: '/terminal/pricing/:tld*',
+ destination: '/terminal/intel/:tld*',
+ permanent: true,
+ },
+ // Listings β LISTING
+ {
+ source: '/terminal/listings',
+ destination: '/terminal/listing',
+ permanent: true,
+ },
+ // Auctions & Marketplace β MARKET
+ {
+ source: '/terminal/auctions',
+ destination: '/terminal/market',
+ permanent: true,
+ },
+ {
+ source: '/terminal/marketplace',
+ destination: '/terminal/market',
+ permanent: true,
+ },
+ // Portfolio β WATCHLIST (combined)
+ {
+ source: '/terminal/portfolio',
+ destination: '/terminal/watchlist',
+ permanent: true,
+ },
+ // Alerts β RADAR (will be integrated)
+ {
+ source: '/terminal/alerts',
+ destination: '/terminal/radar',
+ permanent: true,
+ },
+ // SEO β RADAR (premium feature, hidden for now)
+ {
+ source: '/terminal/seo',
+ destination: '/terminal/radar',
+ permanent: true,
+ },
]
},
diff --git a/frontend/src/app/buy/page.tsx b/frontend/src/app/buy/page.tsx
index 6359da8..2c99d91 100644
--- a/frontend/src/app/buy/page.tsx
+++ b/frontend/src/app/buy/page.tsx
@@ -216,7 +216,7 @@ export default function BrowseListingsPage() {
: 'Be the first to list your domain!'}
@@ -288,7 +288,7 @@ export default function BrowseListingsPage() {
DNS verification ensures only real owners can list.
List Your Domain
diff --git a/frontend/src/app/login/page.tsx b/frontend/src/app/login/page.tsx
index 8b8dbf2..d226350 100644
--- a/frontend/src/app/login/page.tsx
+++ b/frontend/src/app/login/page.tsx
@@ -56,7 +56,7 @@ function LoginForm() {
// Get redirect URL from query params or localStorage (set during registration)
const paramRedirect = searchParams.get('redirect')
- const [redirectTo, setRedirectTo] = useState(paramRedirect || '/terminal/dashboard')
+ const [redirectTo, setRedirectTo] = useState(paramRedirect || '/terminal/radar')
// Check localStorage for redirect (set during registration before email verification)
useEffect(() => {
@@ -125,7 +125,7 @@ function LoginForm() {
}
// Generate register link with redirect preserved
- const registerLink = redirectTo !== '/terminal/dashboard'
+ const registerLink = redirectTo !== '/terminal/radar'
? `/register?redirect=${encodeURIComponent(redirectTo)}`
: '/register'
diff --git a/frontend/src/app/oauth/callback/page.tsx b/frontend/src/app/oauth/callback/page.tsx
index c3f81c8..cf72968 100644
--- a/frontend/src/app/oauth/callback/page.tsx
+++ b/frontend/src/app/oauth/callback/page.tsx
@@ -12,7 +12,7 @@ function OAuthCallbackContent() {
useEffect(() => {
const token = searchParams.get('token')
- const redirect = searchParams.get('redirect') || '/terminal/dashboard'
+ const redirect = searchParams.get('redirect') || '/terminal/radar'
const isNew = searchParams.get('new') === 'true'
const error = searchParams.get('error')
diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx
index d090701..d51d93b 100644
--- a/frontend/src/app/page.tsx
+++ b/frontend/src/app/page.tsx
@@ -772,7 +772,7 @@ export default function HomePage() {
{isAuthenticated ? "Go to Dashboard" : "Start Free"}
@@ -793,7 +793,7 @@ export default function HomePage() {
Track your first domain in under a minute. Free forever, no credit card.
{isAuthenticated ? "Command Center" : "Join the Hunt"}
diff --git a/frontend/src/app/register/page.tsx b/frontend/src/app/register/page.tsx
index a0dcdff..f6fbac6 100644
--- a/frontend/src/app/register/page.tsx
+++ b/frontend/src/app/register/page.tsx
@@ -62,7 +62,7 @@ function RegisterForm() {
const [registered, setRegistered] = useState(false)
// Get redirect URL from query params
- const redirectTo = searchParams.get('redirect') || '/terminal/dashboard'
+ const redirectTo = searchParams.get('redirect') || '/terminal/radar'
// Load OAuth providers
useEffect(() => {
@@ -79,7 +79,7 @@ function RegisterForm() {
// Store redirect URL for after email verification
// This will be picked up by the login page after verification
- if (redirectTo !== '/terminal/dashboard') {
+ if (redirectTo !== '/terminal/radar') {
localStorage.setItem('pounce_redirect_after_login', redirectTo)
}
@@ -93,7 +93,7 @@ function RegisterForm() {
}
// Generate login link with redirect preserved
- const loginLink = redirectTo !== '/terminal/dashboard'
+ const loginLink = redirectTo !== '/terminal/radar'
? `/login?redirect=${encodeURIComponent(redirectTo)}`
: '/login'
diff --git a/frontend/src/app/terminal/pricing/[tld]/page.tsx b/frontend/src/app/terminal/intel/[tld]/page.tsx
similarity index 99%
rename from frontend/src/app/terminal/pricing/[tld]/page.tsx
rename to frontend/src/app/terminal/intel/[tld]/page.tsx
index dd0c6fa..f59b06a 100644
--- a/frontend/src/app/terminal/pricing/[tld]/page.tsx
+++ b/frontend/src/app/terminal/intel/[tld]/page.tsx
@@ -377,7 +377,7 @@ export default function CommandTldDetailPage() {
TLD Not Found
{error || `The TLD .${tld} could not be found.`}
@@ -397,7 +397,7 @@ export default function CommandTldDetailPage() {
{/* Breadcrumb */}