Skip to content

refactor: Angular v21 upgrade and progressive migration to signals-based API#142

Open
ValeSci96 wants to merge 28 commits intokatoid:mainfrom
ValeSci96:main
Open

refactor: Angular v21 upgrade and progressive migration to signals-based API#142
ValeSci96 wants to merge 28 commits intokatoid:mainfrom
ValeSci96:main

Conversation

@ValeSci96
Copy link
Copy Markdown

Overview

This PR upgrades the project to Angular v21 and incrementally modernizes the codebase to align with current Angular best practices.

The goal is to keep the library up to date while preparing it for future Angular developments (signals, standalone APIs, zoneless).

What’s included

Angular & ecosystem upgrades

  • Angular upgraded from v17 → v21
  • Angular Material upgraded up to v20
  • RxJS and tooling updates
  • Removal of deprecated tooling (e.g. Protractor)

Internal refactoring (non-functional changes)

  • Progressive migration to signal-based inputs
  • Introduction of input() / output() APIs where applicable
  • Improved lifecycle management (takeUntilDestroyed)
  • Updated dependency injection patterns
  • Migration to new Angular control flow syntax

Grid & API alignment

  • Internal grid state migrated to signals
  • Improved alignment with standalone API
  • Legacy compatibility clarified where possible

Demo application

  • Updated to modern Angular bootstrap & routing
  • Enabled zoneless mode
  • Fixed layout synchronization issues
  • Restored real-life examples using ngx-echarts

Fixes & maintenance

  • Fixed build warnings after Material upgrade
  • Removed vulnerable dependency (ngx-charts)

Breaking changes

This PR may introduce breaking changes:

  • KtdGridModule is now deprecated
  • Some internal APIs now rely on signals
  • Projects relying on legacy patterns may require adjustments

Notes for maintainers

  • This is a relatively large refactor, but commits are structured to make review easier
  • The migration was done incrementally to reduce risk
  • I’m happy to split this PR or adjust scope if preferred

Motivation

The Angular ecosystem has evolved significantly (signals, standalone, zoneless).
This update aims to keep the library aligned with the framework direction and easier to maintain going forward.

Feedback

Any feedback is very welcome, especially regarding:

  • backward compatibility
  • API surface changes
  • preferred migration strategy

valentina.scianaro added 28 commits April 28, 2026 14:22
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