feat: add i18n internationalization support

- Add react-i18next, i18next with browser language detection
- Support Traditional Chinese (zh-TW) and English (en)
- Default language: zh-TW, stored in localStorage
- Create 10 translation namespaces (common, auth, dashboard, tasks, etc.)
- Add LanguageSwitcher component in header
- Translate pages: Login, Dashboard, Tasks, Spaces, Workload, Audit

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
beabigegg
2026-01-08 23:18:41 +08:00
parent 1e31def7ba
commit 4bc3c24360
32 changed files with 1741 additions and 104 deletions

View File

@@ -0,0 +1,48 @@
{
"title": "Project Health",
"subtitle": "Monitor the overall health of projects",
"overall": {
"title": "Overall Health",
"healthy": "Healthy",
"atRisk": "At Risk",
"critical": "Critical"
},
"metrics": {
"schedule": "Schedule",
"budget": "Budget",
"scope": "Scope",
"quality": "Quality",
"resources": "Resources"
},
"status": {
"onTrack": "On Track",
"delayed": "Delayed",
"ahead": "Ahead",
"overBudget": "Over Budget",
"underBudget": "Under Budget"
},
"indicators": {
"title": "Health Indicators",
"taskCompletion": "Task Completion Rate",
"onTimeDelivery": "On-time Delivery Rate",
"blockedTasks": "Blocked Tasks",
"overdueRate": "Overdue Rate",
"velocityTrend": "Velocity Trend"
},
"risks": {
"title": "Risks",
"high": "High Risk",
"medium": "Medium Risk",
"low": "Low Risk",
"mitigated": "Mitigated"
},
"actions": {
"viewDetails": "View Details",
"exportReport": "Export Report",
"setAlert": "Set Alert"
},
"empty": {
"title": "No Health Data",
"description": "The project needs more data to display health metrics"
}
}