Merge pull request #9 from svc-design/codex/修正-ui/homepage-运行错误

Fix Next.js homepage layout and i18n
This commit is contained in:
shenlan 2025-06-18 20:34:36 +08:00 committed by GitHub
commit 3b2c203ee7
3 changed files with 91 additions and 0 deletions

View File

@ -0,0 +1,17 @@
import './globals.css'
import { LanguageProvider } from '@i18n/LanguageProvider'
export const metadata = {
title: 'CloudNative Suite',
description: 'Unified tools for your cloud native stack',
}
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body className="bg-gray-950 text-white">
<LanguageProvider>{children}</LanguageProvider>
</body>
</html>
)
}

View File

@ -0,0 +1,29 @@
'use client'
import { createContext, useContext, useState } from 'react'
export type Language = 'en' | 'zh'
type LanguageContextType = {
language: Language
setLanguage: (lang: Language) => void
}
const LanguageContext = createContext<LanguageContextType>({
language: 'en',
setLanguage: () => {},
})
export function LanguageProvider({ children }: { children: React.ReactNode }) {
const [language, setLanguage] = useState<Language>('en')
return (
<LanguageContext.Provider value={{ language, setLanguage }}>
{children}
</LanguageContext.Provider>
)
}
export function useLanguage() {
return useContext(LanguageContext)
}

View File

@ -0,0 +1,45 @@
export type Translation = {
hero: {
title: string
description: string
start: string
learn: string
}
featuresTitle: string
featuresSubtitle: string
openSourceTitle: string
downloadTitle: string
downloadSubtitle: string
footerLinks: [string, string, string]
}
export const translations: Record<'en' | 'zh', Translation> = {
en: {
hero: {
title: 'CloudNative Suite',
description: 'Unified tools for building and managing your cloud native stack.',
start: 'Get Started',
learn: 'Learn More',
},
featuresTitle: 'Features',
featuresSubtitle: 'Everything you need to build, ship and run applications',
openSourceTitle: 'Open Source Projects',
downloadTitle: 'Download',
downloadSubtitle: 'Select your platform',
footerLinks: ['Privacy Policy', 'Terms of Service', 'Contact Us'],
},
zh: {
hero: {
title: '云原生套件',
description: '为构建和管理云原生环境提供统一工具',
start: '开始使用',
learn: '了解更多',
},
featuresTitle: '功能特性',
featuresSubtitle: '助您轻松构建、交付和运行应用',
openSourceTitle: '开源项目',
downloadTitle: '下载',
downloadSubtitle: '选择适合的平台',
footerLinks: ['隐私政策', '服务条款', '联系我们'],
},
}