Migrate from Vite to Next.js 15 with SSR
- Replace Vite + React Router with Next.js 15 App Router - Implement i18n with next-intl (URL-based: /de, /en, /sr) - Add SSR/SSG for all pages (48 static pages generated) - Setup Supabase SSR client for auth - Migrate all pages: Home, About, Portfolio, Blog, Contact, Login, Dashboard, Imprint, Privacy, Terms - Add Docker support with standalone output - Replace i18next with next-intl JSON translations - Use next/image for optimized images Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
// C:\Development\Damjan Savic\Portfolio\src\i18n\locales\en\navigation.ts
|
||||
export const navigation = {
|
||||
// Main navigation
|
||||
main: {
|
||||
home: 'Home',
|
||||
about: 'About',
|
||||
portfolio: 'Portfolio',
|
||||
blog: 'Blog',
|
||||
contact: 'Contact'
|
||||
},
|
||||
// Dashboard and Admin
|
||||
admin: {
|
||||
login: 'Login',
|
||||
dashboard: 'Dashboard',
|
||||
logout: 'Logout'
|
||||
},
|
||||
// Footer Navigation
|
||||
footer: {
|
||||
legal: {
|
||||
privacy: 'Privacy Policy',
|
||||
terms: 'Terms & Conditions',
|
||||
imprint: 'Imprint'
|
||||
},
|
||||
sections: {
|
||||
portfolio: 'Portfolio',
|
||||
blog: 'Blog',
|
||||
contact: 'Contact'
|
||||
}
|
||||
},
|
||||
// Page sections
|
||||
sections: {
|
||||
experience: 'Experience',
|
||||
skills: 'Skills',
|
||||
projects: 'Projects',
|
||||
about: 'About'
|
||||
},
|
||||
// Breadcrumbs and back navigation
|
||||
navigation: {
|
||||
backTo: {
|
||||
home: 'Back to Home',
|
||||
portfolio: 'Back to Portfolio',
|
||||
blog: 'Back to Blog'
|
||||
},
|
||||
breadcrumbs: {
|
||||
home: 'Home',
|
||||
portfolio: 'Portfolio',
|
||||
blog: 'Blog',
|
||||
about: 'About',
|
||||
contact: 'Contact'
|
||||
}
|
||||
},
|
||||
// Mobile Navigation
|
||||
mobile: {
|
||||
menu: 'Menu',
|
||||
close: 'Close',
|
||||
open: 'Open Menu'
|
||||
},
|
||||
// URLs (for dynamic route generation)
|
||||
urls: {
|
||||
home: '/',
|
||||
about: '/about',
|
||||
portfolio: '/portfolio',
|
||||
blog: '/blog',
|
||||
contact: '/contact',
|
||||
login: '/login',
|
||||
dashboard: '/dashboard',
|
||||
privacy: '/privacy',
|
||||
terms: '/terms'
|
||||
},
|
||||
// Meta information for navigation
|
||||
meta: {
|
||||
main: 'Main Navigation',
|
||||
footer: 'Footer Navigation',
|
||||
social: 'Social Media Navigation',
|
||||
legal: 'Legal Navigation'
|
||||
}
|
||||
} as const;
|
||||
|
||||
export type NavigationConfig = typeof navigation;
|
||||
Reference in New Issue
Block a user