diff --git a/TimeWarp.Architecture/Kanban/Backlog/B002_Research-And-Plan-I18n-Implementation.md b/TimeWarp.Architecture/Kanban/Backlog/B002_Research-And-Plan-I18n-Implementation.md new file mode 100644 index 000000000..b0cd5f8fb --- /dev/null +++ b/TimeWarp.Architecture/Kanban/Backlog/B002_Research-And-Plan-I18n-Implementation.md @@ -0,0 +1,53 @@ +# B002: Research and Plan i18n Implementation + +## Description + +Research and create a comprehensive plan for implementing internationalization (i18n) and localization (l10n) support in the TimeWarp.Architecture template. This includes analyzing existing .NET i18n solutions, evaluating integration approaches with Blazor WebAssembly/Server, and defining the architecture for multi-language support. + +## Requirements + +- Research current .NET i18n best practices and available libraries +- Evaluate compatibility with Blazor WebAssembly and Server modes +- Analyze integration requirements with TimeWarp State management +- Define resource management strategy (RESX, JSON, database, etc.) +- Consider pluralization and cultural formatting requirements +- Plan for runtime language switching capability +- Assess impact on FastEndpoints API responses +- Define localization workflow for development teams + +## Checklist + +### Research +- [ ] Research .NET Core i18n libraries and frameworks +- [ ] Evaluate Blazor-specific localization solutions +- [ ] Analyze community solutions and best practices +- [ ] Review Microsoft's official i18n guidance for Blazor + +### Design +- [ ] Design resource management architecture +- [ ] Plan integration with TimeWarp State management +- [ ] Define API contract localization strategy +- [ ] Design language switching user experience +- [ ] Plan fallback language handling + +### Implementation Planning +- [ ] Define file organization structure for localized resources +- [ ] Plan configuration management for supported languages +- [ ] Design developer workflow for adding new translations +- [ ] Plan testing strategy for localized content + +### Documentation +- [ ] Create implementation roadmap +- [ ] Document architectural decisions +- [ ] Create developer guide outline + +## Notes + +This is a research and planning task. The goal is to create a comprehensive implementation plan that can be broken down into specific development tasks. Consider the distributed microservices architecture and ensure the i18n solution works across all container applications (Web, Api, Grpc, Yarp). + +Key considerations: +- TimeWarp State management integration +- FastEndpoints API localization +- Blazor WebAssembly vs Server mode differences +- Development workflow efficiency +- Performance impact on application startup and runtime \ No newline at end of file diff --git a/TimeWarp.Architecture/Kanban/Backlog/B003_Blazor_Key_Flow.md b/TimeWarp.Architecture/Kanban/Backlog/B003_Blazor_Key_Flow.md new file mode 100644 index 000000000..a238e3e2d --- /dev/null +++ b/TimeWarp.Architecture/Kanban/Backlog/B003_Blazor_Key_Flow.md @@ -0,0 +1,43 @@ +# B003: Build Flow to Check @key on Blazor Loops + +## Description +Create a Flow (validation/analysis tool) to automatically detect Blazor loops that are missing the `@key` directive and ensure proper key usage for performance and correctness. + +## Background +Blazor loops without proper `@key` directives can cause rendering issues, performance problems, and incorrect component state management when the collection changes. + +## Requirements +- Detect `@for`, `@foreach` loops in Blazor components +- Identify loops missing `@key` directive +- Validate that `@key` values are unique and stable +- Report locations of violations with line numbers +- Integrate with existing build/validation pipeline +- Provide clear error messages with remediation guidance + +## Checklist + +### Design +- [ ] Design loop detection algorithm for .razor files +- [ ] Define validation rules for @key usage +- [ ] Plan integration with build pipeline +- [ ] Design error reporting format + +### Implementation +- [ ] Create Roslyn analyzer or custom parser +- [ ] Implement loop detection logic +- [ ] Add @key validation rules +- [ ] Build error reporting system +- [ ] Add build pipeline integration + +### Documentation +- [ ] Create usage documentation +- [ ] Document configuration options +- [ ] Add troubleshooting guide + +## Notes + +Should analyze `.razor` files and consider both server-side and WebAssembly scenarios. May leverage Roslyn analyzers or custom parsing. Should handle nested loops appropriately. + +Priority: Medium - Code quality and performance improvement + +Labels: flow, blazor, validation, performance, code-quality \ No newline at end of file