Skip to main content

πŸ—ΊοΈ Roadmap

πŸ“Š Current status​

PhaseDescriptionStatus
1πŸ—οΈ Foundation β€” InjectableAttribute, source generator, unit testsβœ… Done
2πŸ”Œ Attribute model, Microsoft DI integration, ordering, lifetimesβœ… Done
3πŸš€ NativeAOT / trimming validationβœ… Done
4πŸ“ˆ Benchmarks, Docusaurus website, CI hardeningβœ… Done
5πŸ“¦ NuGet publication and announcementβœ… Done
6🌟 Developer experience, ecosystem expansionπŸ“‹ Planned

For the full phase-by-phase checklist, see ROADMAP.md in the repository.


🌟 Phase 6 highlights β€” what's coming​

πŸ”¬ Source-generator quality​

  • GenDI.Analyzers companion package β€” IDE warnings for misconfigured [Injectable] / [Inject] usage
  • Code-fix provider: convert constructor injection to GenDI property injection automatically
  • Incremental generator optimization to reduce rebuild cost on partial changes

πŸ—‚οΈ Registration model​

  • [InjectOptional] β€” optional property injection (skips unregistered services gracefully)
  • [ConditionalInjectable(environmentName)] β€” environment-conditional registration
  • [DecoratorFor<TService>] β€” decorator pattern auto-wiring
  • Open-generic service registration support
  • Module-based grouping with [InjectableModule]

🌐 Platform support​

  • Blazor WebAssembly validated property injection
  • MAUI / mobile AOT on iOS and Android
  • Worker Service and hosted service integration examples
  • F# attribute support exploration

πŸ§ͺ Testing​

  • GenDI.Testing companion package with ServiceBuilder helper for unit tests using property injection

πŸ› οΈ Tooling and IDE​

  • Visual Studio item-template: "GenDI Service" scaffold
  • dotnet new template: gendi-service
  • Rider live template

πŸ“‘ Observability​

  • [ObservableService] β€” auto-generated OpenTelemetry spans around service method calls
  • Startup registration summary log at Debug level

Want to help make any of these real? See Contributing to get started.