fix: resolve 40 broken links in HomeI18n.js for locales without translated content

This commit is contained in:
sanbuphy
2026-05-14 12:58:01 +08:00
parent fa940c15f8
commit 668c3accdc
+106 -106
View File
@@ -243,7 +243,7 @@ export const i18n = {
title: 'Vibe Coding',
desc: 'Master the core of AI coding: From product ideas to interactive prototypes.',
sub: 'Core Mindset',
link: '/en/stage-1/'
link: '/en/stage-1/learning-map/'
}
]
},
@@ -430,19 +430,19 @@ export const i18n = {
title: 'AI PM',
desc: 'アイデアからプロトタイプまで、話すだけ。',
sub: '非技術者向け',
link: '/ja-jp/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'ゲーム化入門',
desc: 'スネークゲームやテトリスを作って、コードへの恐怖を克服。',
sub: '遊びながら学ぶ',
link: '/ja-jp/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'AI時代のコーディングの核心:プロンプトエンジニアリングとコンテキスト管理。',
sub: '核心的な考え方',
link: '/ja-jp/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -456,19 +456,19 @@ export const i18n = {
title: 'フルスタック',
headline: 'フロント&バックエンド。',
desc: 'DB設計からAPI、コンポーネントまで、現代的なWebアプリを完全に構築。',
link: '/ja-jp/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'リアルプロジェクト',
headline: 'おもちゃのコードは卒業。',
desc: '認証、ストレージ、ファイルアップロード、コアビジネスロジックを深く掘り下げる。',
link: '/ja-jp/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'デプロイ',
headline: '世界に公開。',
desc: 'サーバー設定、DNS、CI/CD。製品リリースのラストワンマイル。',
link: '/ja-jp/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -480,22 +480,22 @@ export const i18n = {
{
title: 'WeChatミニアプリ',
desc: 'クロスプラットフォーム開発、数億人のユーザーに到達。',
link: '/ja-jp/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'AIネイティブアプリ',
desc: 'RAG、Agent。LLMの限界を探る。',
link: '/ja-jp/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: '複雑なアーキテクチャ',
desc: '高並行性、高可用性のアーキテクチャ設計。',
link: '/ja-jp/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'パーソナルブランド',
desc: '自分のウェブサイトと学術ブログを構築。',
link: '/ja-jp/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -508,22 +508,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/ja-jp/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/ja-jp/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/ja-jp/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/ja-jp/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -570,19 +570,19 @@ export const i18n = {
title: 'AI 產品經理',
desc: '從想法到高保真原型,你只需要會說話。',
sub: '適合非技術背景',
link: '/zh-tw/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: '遊戲化入門',
desc: '通過製作貪吃蛇、俄羅斯方塊,打破對代碼的恐懼。',
sub: '邊玩邊學',
link: '/zh-tw/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: '掌握 AI 時代的編程核心:提示詞工程與上下文管理。',
sub: '核心心法',
link: '/zh-tw/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -595,19 +595,19 @@ export const i18n = {
title: '全棧開發',
headline: '獨立完成前後端。',
desc: '從數據庫設計到 API 開發,再到前端組件化,完整構建一個現代化 Web 應用。',
link: '/zh-tw/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: '真實項目',
headline: '拒絕玩具代碼。',
desc: '深入理解用戶鑑權、數據存儲、文件上傳等核心業務邏輯。',
link: '/zh-tw/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: '部署上線',
headline: '讓世界看到你的作品。',
desc: '學習服務器配置、域名解析和自動化部署,打通產品落地的最後一公里。',
link: '/zh-tw/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -619,22 +619,22 @@ export const i18n = {
{
title: '微信小程序',
desc: '跨平台開發,觸達億級用戶。',
link: '/zh-tw/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'AI 原生應用',
desc: 'RAG、Agent,探索 LLM 的無限可能。',
link: '/zh-tw/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: '複雜業務架構',
desc: '應對高並發、高可用場景的架構設計。',
link: '/zh-tw/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: '個人品牌',
desc: '構建屬於自己的個人網頁與學術博客。',
link: '/zh-tw/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -646,22 +646,22 @@ export const i18n = {
{
title: '人工智能',
desc: 'LLM、Agent、RAG,深入 AI 底層原理。',
link: '/zh-tw/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: '前端開發',
desc: '瀏覽器原理、性能優化、Canvas 圖形學。',
link: '/zh-tw/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: '後端架構',
desc: '高並發、分佈式、微服務架構設計。',
link: '/zh-tw/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: '通用技能',
desc: 'Git、網絡、IDE 原理,開發者必備素養。',
link: '/zh-tw/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -708,19 +708,19 @@ export const i18n = {
title: 'AI 제품 관리자',
desc: '아이디어에서 프로토타입까지, 말 한마디로.',
sub: '비전공자 추천',
link: '/ko-kr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: '게임으로 입문',
desc: '스네이크 게임, 테트리스를 만들며 코딩 공포증 극복.',
sub: '놀면서 배우기',
link: '/ko-kr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'AI 시대 코딩의 핵심: 프롬프트 엔지니어링과 컨텍스트 관리.',
sub: '핵심 마인드셋',
link: '/ko-kr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -733,19 +733,19 @@ export const i18n = {
title: '풀스택 개발',
headline: '프론트 & 백엔드 독립 완성.',
desc: 'DB 설계부터 API 개발, 프론트엔드 컴포넌트화까지 현대적인 웹 앱을 완벽하게 구축.',
link: '/ko-kr/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: '실전 프로젝트',
headline: '장난감 코드는 그만.',
desc: '사용자 인증, 데이터 저장, 파일 업로드 등 핵심 비즈니스 로직 심층 이해.',
link: '/ko-kr/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: '배포 및 출시',
headline: '세상에 보여주세요.',
desc: '서버 설정, 도메인 연결, CI/CD. 제품 출시의 마지막 관문.',
link: '/ko-kr/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -758,22 +758,22 @@ export const i18n = {
{
title: '위챗 미니프로그램',
desc: '크로스 플랫폼 개발, 수억 명의 사용자 도달.',
link: '/ko-kr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'AI 네이티브 앱',
desc: 'RAG, Agent. LLM의 한계 탐색.',
link: '/ko-kr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: '복잡한 아키텍처',
desc: '고동시성, 고가용성 아키텍처 설계.',
link: '/ko-kr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: '퍼스널 브랜딩',
desc: '나만의 웹사이트와 학술 블로그 구축.',
link: '/ko-kr/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -786,22 +786,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/ko-kr/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/ko-kr/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/ko-kr/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/ko-kr/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -848,19 +848,19 @@ export const i18n = {
title: 'PM de IA',
desc: 'De la idea al prototipo, solo hablando.',
sub: 'Amigable para no técnicos',
link: '/es-es/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Intro Gamificada',
desc: 'Crea Snake, Tetris y rompe el miedo al código.',
sub: 'Aprende jugando',
link: '/es-es/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'Domina el núcleo de la programación con IA: Ingeniería de Prompts y Contexto.',
sub: 'Mentalidad Clave',
link: '/es-es/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -926,22 +926,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/es-es/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/es-es/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/es-es/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/es-es/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -988,19 +988,19 @@ export const i18n = {
title: 'PM IA',
desc: "De l'idée au prototype, juste en parlant.",
sub: 'Accessible aux non-tech',
link: '/fr-fr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Intro Gamifiée',
desc: 'Créez Snake, Tetris et brisez la peur du code.',
sub: 'Apprendre en jouant',
link: '/fr-fr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'Maîtrisez le cœur du codage IA : Prompt Engineering & Contexte.',
sub: 'Esprit Clé',
link: '/fr-fr/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -1014,19 +1014,19 @@ export const i18n = {
title: 'Full Stack',
headline: 'Frontend & Backend.',
desc: 'Du design DB aux API et composants, construisez une web app moderne complète.',
link: '/fr-fr/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Projets Réels',
headline: 'Pas de code jouet.',
desc: "Plongez dans l'Auth, le Stockage, l'Upload de fichiers et la logique métier.",
link: '/fr-fr/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Déploiement',
headline: 'Montrez au monde.',
desc: 'Config serveur, DNS, CI/CD. Le dernier kilomètre de la livraison produit.',
link: '/fr-fr/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -1039,22 +1039,22 @@ export const i18n = {
{
title: 'WeChat Mini-app',
desc: "Dév multiplateforme, touchant des millions d'utilisateurs.",
link: '/fr-fr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Apps Natives IA',
desc: 'RAG, Agent. Explorez les limites des LLM.',
link: '/fr-fr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Arch. Complexe',
desc: "Conception d'architecture haute concurrence et haute disponibilité.",
link: '/fr-fr/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Marque Perso',
desc: 'Construisez votre propre site web et blog académique.',
link: '/fr-fr/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -1067,22 +1067,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/fr-fr/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/fr-fr/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/fr-fr/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/fr-fr/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -1129,19 +1129,19 @@ export const i18n = {
title: 'KI PM',
desc: 'Von der Idee zum Prototyp, einfach durch Sprechen.',
sub: 'Nicht-Tech-freundlich',
link: '/de-de/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Gamifizierte Intro',
desc: 'Baue Snake, Tetris und überwinde die Angst vor Code.',
sub: 'Spielend lernen',
link: '/de-de/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'Meistere den Kern des KI-Codings: Prompt Engineering & Kontext.',
sub: 'Kern-Mindset',
link: '/de-de/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -1154,19 +1154,19 @@ export const i18n = {
title: 'Full Stack',
headline: 'Frontend & Backend.',
desc: 'Vom DB-Design bis zu APIs und Komponenten, baue eine moderne Web-App komplett.',
link: '/de-de/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Echte Projekte',
headline: 'Kein Spielzeug-Code.',
desc: 'Tauche ein in Auth, Speicher, Datei-Uploads und Kern-Geschäftslogik.',
link: '/de-de/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Deployment',
headline: 'Zeig es der Welt.',
desc: 'Server-Konfig, DNS, CI/CD. Die letzte Meile der Produktlieferung.',
link: '/de-de/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -1179,22 +1179,22 @@ export const i18n = {
{
title: 'WeChat Mini-App',
desc: 'Plattformübergreifende Entwicklung, Millionen von Nutzern erreichen.',
link: '/de-de/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'KI-Native Apps',
desc: 'RAG, Agent. Erkunde die Grenzen von LLMs.',
link: '/de-de/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Komplexe Arch',
desc: 'Architekturdesign für hohe Gleichzeitigkeit und hohe Verfügbarkeit.',
link: '/de-de/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Persönliche Marke',
desc: 'Baue deine eigene Website und deinen akademischen Blog.',
link: '/de-de/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -1207,22 +1207,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/de-de/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/de-de/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/de-de/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/de-de/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -1269,19 +1269,19 @@ export const i18n = {
title: 'مدير منتج AI',
desc: 'من الفكرة إلى النموذج الأولي، بمجرد التحدث.',
sub: 'صديق لغير التقنيين',
link: '/ar-sa/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'مقدمة بالألعاب',
desc: 'ابنِ Snake و Tetris واكسر حاجز الخوف من الكود.',
sub: 'تعلم باللعب',
link: '/ar-sa/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'أتقن جوهر برمجة الذكاء الاصطناعي: هندسة الأوامر والسياق.',
sub: 'العقلية الأساسية',
link: '/ar-sa/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -1295,19 +1295,19 @@ export const i18n = {
title: 'Full Stack',
headline: 'واجهة أمامية وخلفية.',
desc: 'من تصميم DB إلى API والمكونات، ابنِ تطبيق ويب حديث بالكامل.',
link: '/ar-sa/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'مشاريع حقيقية',
headline: 'ليس كود ألعاب.',
desc: 'تعمق في المصادقة، التخزين، رفع الملفات ومنطق العمل الأساسي.',
link: '/ar-sa/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'النشر',
headline: 'أظهر للعالم.',
desc: 'إعداد الخادم، DNS، CI/CD. الميل الأخير لتسليم المنتج.',
link: '/ar-sa/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -1320,22 +1320,22 @@ export const i18n = {
{
title: 'برنامج WeChat المصغر',
desc: 'تطوير متعدد المنصات، الوصول لملايين المستخدمين.',
link: '/ar-sa/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'تطبيقات AI الأصلية',
desc: 'RAG، Agent. استكشف حدود LLMs.',
link: '/ar-sa/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'هندسة معقدة',
desc: 'تصميم هندسة التزامن العالي والتوافر العالي.',
link: '/ar-sa/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'العلامة التجارية الشخصية',
desc: 'ابنِ موقعك الخاص ومدونتك الأكاديمية.',
link: '/ar-sa/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -1348,22 +1348,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/ar-sa/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/ar-sa/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/ar-sa/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/ar-sa/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},
@@ -1410,19 +1410,19 @@ export const i18n = {
title: 'AI PM',
desc: 'Từ ý tưởng đến nguyên mẫu, chỉ bằng lời nói.',
sub: 'Thân thiện với non-tech',
link: '/vi-vn/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Nhập môn qua Game',
desc: 'Xây dựng Snake, Tetris và phá bỏ nỗi sợ code.',
sub: 'Học mà chơi',
link: '/vi-vn/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
},
{
title: 'Vibe Coding',
desc: 'Nắm vững cốt lõi lập trình AI: Prompt Engineering & Context.',
sub: 'Tư duy cốt lõi',
link: '/vi-vn/stage-1/'
link: '/zh-cn/stage-1/learning-map/'
}
]
},
@@ -1436,19 +1436,19 @@ export const i18n = {
title: 'Full Stack',
headline: 'Frontend & Backend.',
desc: 'Từ thiết kế DB đến API và component, xây dựng trọn vẹn web app hiện đại.',
link: '/vi-vn/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Dự án thực tế',
headline: 'Không phải code đồ chơi.',
desc: 'Đi sâu vào Auth, Lưu trữ, Upload file và logic nghiệp vụ cốt lõi.',
link: '/vi-vn/stage-2/'
link: '/zh-cn/stage-2/'
},
{
title: 'Triển khai',
headline: 'Show cho thế giới.',
desc: 'Cấu hình server, DNS, CI/CD. Chặng cuối của việc giao sản phẩm.',
link: '/vi-vn/stage-2/'
link: '/zh-cn/stage-2/'
}
]
},
@@ -1461,22 +1461,22 @@ export const i18n = {
{
title: 'WeChat Mini-app',
desc: 'Phát triển đa nền tảng, tiếp cận hàng triệu người dùng.',
link: '/vi-vn/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'App AI Native',
desc: 'RAG, Agent. Khám phá giới hạn của LLM.',
link: '/vi-vn/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Kiến trúc phức tạp',
desc: 'Thiết kế kiến trúc chịu tải cao và sẵn sàng cao.',
link: '/vi-vn/stage-3/'
link: '/zh-cn/stage-3/'
},
{
title: 'Thương hiệu cá nhân',
desc: 'Xây dựng website và blog học thuật của riêng bạn.',
link: '/vi-vn/stage-3/'
link: '/zh-cn/stage-3/'
}
]
},
@@ -1489,22 +1489,22 @@ export const i18n = {
{
title: 'AI Fundamentals',
desc: 'LLM, Agent, RAG. Dive into AI internals.',
link: '/vi-vn/appendix/ai-evolution'
link: '/zh-cn/appendix/8-artificial-intelligence/ai-history'
},
{
title: 'Frontend',
desc: 'Browser internals, Performance, Canvas.',
link: '/vi-vn/appendix/web-basics'
link: '/zh-cn/appendix/3-browser-and-frontend/javascript-deep-dive'
},
{
title: 'Backend',
desc: 'High concurrency, Distributed systems, Microservices.',
link: '/vi-vn/appendix/backend-evolution'
link: '/zh-cn/appendix/4-server-and-backend/backend-layered-architecture'
},
{
title: 'General Skills',
desc: 'Git, Networks, IDE internals.',
link: '/vi-vn/appendix/git-intro'
link: '/zh-cn/appendix/2-development-tools/git-version-control'
}
]
},