Skip to content

Add French locale, Restocking view, and Tasks modal#176

Open
rbouchard42 wants to merge 3 commits into
beck-source:mainfrom
rbouchard42:new_features
Open

Add French locale, Restocking view, and Tasks modal#176
rbouchard42 wants to merge 3 commits into
beck-source:mainfrom
rbouchard42:new_features

Conversation

@rbouchard42

Copy link
Copy Markdown

Summary

  • French locale (fr.js): Full French translation added to the i18n system alongside existing English and Japanese locales
  • Restocking view (Restocking.vue): New page with budget slider and recommended items table; route and nav link wired up in main.js
  • Tasks modal (TasksModal.vue): In-app task management modal added to the profile/header area
  • i18n & currency: useI18n.js and currency.js updated to support the third locale; LanguageSwitcher and ProfileDetailsModal components updated accordingly
  • Backend: demand_forecasts.json data updated; main.py and mock_data.py refined for consistent filtering behavior
  • Docs: CLAUDE.md refreshed across root, client/, and server/ to reflect current architecture

Test plan

  • Switch locale to French and verify all nav labels, table headers, and stat cards translate correctly
  • Navigate to the Restocking page and confirm budget slider and recommended items table load
  • Open the Tasks modal from the profile area and confirm it renders without errors
  • Verify all seven main pages still load (Dashboard, Inventory, Orders, Finance, Demand, Restocking, Reports)
  • Confirm /api/demand returns updated forecast data
  • Run backend tests: cd tests && uv run pytest -v

🤖 Generated with Claude Code

rbouchard42 and others added 3 commits July 1, 2026 11:15
…backend data

- Add French (fr) locale with full translation coverage
- Add Restocking view with budget slider and recommended items table
- Add Tasks modal for in-app task management
- Update LanguageSwitcher and ProfileDetailsModal components
- Expand useI18n composable and currency utility for multi-locale support
- Update demand_forecasts.json and backend filtering in main.py/mock_data.py
- Refresh CLAUDE.md documentation across root, client, and server

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…atting

- Replace all hardcoded English strings with t() calls across Reports.vue
- Wire useFilters() + watch so the page responds to the global filter bar
- Remove console.log statements that spammed the browser console
- Replace hardcoded $ signs with formatCurrency() for JPY/EUR/USD support
- Fix formatMonth() to use dateLocale for locale-aware month labels
- Fix v-for keys from array index to q.quarter / month.month
- Derive summary stats (total revenue, best quarter) from data via computed
- Fix getChangeValue() to use formatCurrency, avoiding double-minus with non-USD
- Set loading initial state to true to prevent empty-table flash on mount
- Add reports.* translation block to en.js, fr.js, and ja.js

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant