- Add multi-language support using next-intl - Configure routing and localization for English and Chinese - Update project structure to support i18n routing - Add middleware and navigation helpers for localized routing - Create message files for translations - Modify layout and page components to support internationalization
39 lines
1.0 KiB
TypeScript
39 lines
1.0 KiB
TypeScript
import { type MetadataRoute } from 'next';
|
|
import { siteConfig } from '@/config/site';
|
|
|
|
/**
|
|
* Generates the Web App Manifest for the application
|
|
*
|
|
* TODO: https://github.com/amannn/next-intl/blob/main/examples/example-app-router/src/app/manifest.ts
|
|
*
|
|
* The manifest.json provides metadata used when the web app is installed on a
|
|
* user's mobile device or desktop. See https://web.dev/add-manifest/
|
|
*
|
|
* @returns {MetadataRoute.Manifest} The manifest configuration object
|
|
*/
|
|
export default function manifest(): MetadataRoute.Manifest {
|
|
return {
|
|
name: siteConfig.name,
|
|
short_name: siteConfig.name,
|
|
description: siteConfig.description,
|
|
start_url: '/',
|
|
display: 'standalone',
|
|
background_color: '#ffffff',
|
|
theme_color: '#ffffff',
|
|
icons: [
|
|
{
|
|
src: '/android-chrome-192x192.png',
|
|
sizes: '192x192',
|
|
type: 'image/png',
|
|
purpose: 'maskable'
|
|
},
|
|
{
|
|
src: '/android-chrome-512x512.png',
|
|
sizes: '512x512',
|
|
type: 'image/png',
|
|
purpose: 'maskable'
|
|
}
|
|
]
|
|
};
|
|
}
|