- 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>
42 lines
1.0 KiB
TypeScript
42 lines
1.0 KiB
TypeScript
// src/i18n/locales/en/pages/home/skills.ts
|
|
export const skills = {
|
|
title: 'Skills',
|
|
skills: [
|
|
{
|
|
name: 'AI & LLMs',
|
|
level: 90,
|
|
description: 'GPT-4, Claude API, Vapi Voice AI'
|
|
},
|
|
{
|
|
name: 'Automation',
|
|
level: 85,
|
|
description: 'n8n, Zapier, Power Automate'
|
|
},
|
|
{
|
|
name: 'Python',
|
|
level: 90,
|
|
description: 'Backend, APIs, Automation'
|
|
},
|
|
{
|
|
name: 'TypeScript',
|
|
level: 85,
|
|
description: 'React, Next.js, Node.js'
|
|
},
|
|
{
|
|
name: 'Database',
|
|
level: 85,
|
|
description: 'PostgreSQL, Supabase, MariaDB'
|
|
},
|
|
{
|
|
name: 'DevOps',
|
|
level: 75,
|
|
description: 'Docker, Vercel, Dedicated Servers'
|
|
}
|
|
],
|
|
aria: {
|
|
skillLevel: 'Skill level',
|
|
selectSkill: 'Select skill'
|
|
}
|
|
} as const;
|
|
export type SkillsTranslations = typeof skills;
|