Skip to content

[i18n] Untranslated strings in Dashboard, Fleet Management, and Connect views #21

@ajaym94

Description

@ajaym94

Part of #20

Problem

The Dashboard, Fleet Management, and Connect pages contain hardcoded English strings that don't go through the translation system. Users who switch to any non-English language will see a mix of translated and untranslated text on these pages.

These are the first screens users see, so this has the highest visibility impact.

Affected files and strings

Dashboard cards

src/components/dashboard/FleetStatusCard.tsx

  • "Fleet Status" (card title)
  • "Total Drones" (label)
  • Status labels: "Online", "In Mission", "Idle", "Returning", "Maintenance", "Offline"

src/components/dashboard/ActiveMissionsCard.tsx

  • "Active Missions" (card title)
  • "In Flight" (label)
  • Suite labels: "Sentry", "Survey", "Agriculture", "Cargo", "SAR", "Inspection"
  • "No active missions" (empty state)

src/components/dashboard/AlertsCountCard.tsx

  • "Alerts" (card title)
  • "Unacknowledged" (label)
  • Alert levels: "Critical", "Warning"

src/components/dashboard/AvgBatteryCard.tsx

  • "Fleet Battery" (card title)
  • "Average", "low", "reporting", "Lowest:" (labels)

src/components/dashboard/AlertFeed.tsx

  • "Recent Alerts" (card title)
  • "No alerts" (empty state)

src/components/dashboard/DashboardOverview.tsx

  • "Quick Actions" (section label)

Fleet Management

src/components/fleet/FleetToolbar.tsx

  • Search placeholder: "Search drones..."
  • Status filter options: "All Status", "Online", "In Mission", "Idle", "Returning", "Maintenance", "Offline"
  • Suite filter options: "All Suites", "Sentry", "Survey", "Agriculture", "Cargo", "SAR", "Inspection"
  • Sort options: "Sort: Name", "Sort: Status", "Sort: Battery", "Sort: Health"
  • View modes: "Grid", "List", "Map"
  • "Add Drone" (button)

Connect page

src/components/connect/ActiveConnections.tsx

  • "No active connections. Connect a flight controller above." (help text)
  • Transport labels: "USB", "WS"
  • "ACTIVE" (badge)

src/components/connect/BuildPresetCard.tsx

  • "details" (button)
  • "No GPS" (status)
  • Feature badges: "COMPUTE", "LIDAR", "MAG"

Notes

  • Suite names like "Sentry" and "SAR" should be translated where the language has a natural equivalent. If a direct translation would sound forced, keep the English name and add a translated description.
  • Status labels ("Online", "Offline", etc.) should definitely be translated since these are common words in all supported languages.
  • "USB" and "WS" are technical abbreviations and should stay as-is.
  • Feature badges like "COMPUTE", "LIDAR", "MAG" are technical terms and should stay as-is.

Expected approach

  1. Add keys to locales/en.json under dashboard, fleet, and connect namespaces (some may already exist but aren't wired up)
  2. Replace hardcoded strings with t() calls
  3. Add translations for all 16 languages

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomersi18nInternationalization and localization

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions