Migrate from AngularJS to Angular using hybrid mode, incremental component rewriting, and dependency injection updates. Use when upgrading AngularJS applications, planning framework migrations, or ...
90
Quality
86%
Does it follow best practices?
Impact
100%
1.02xAverage score across 3 eval scenarios
Passed
No known issues
Hybrid app bootstrap setup
UpgradeModule imported in AppModule
100%
100%
platformBrowserDynamic used
100%
100%
AngularJS bootstrap inside .then()
100%
100%
UpgradeModule.bootstrap called
100%
100%
strictDi: true
100%
100%
ngDoBootstrap overridden
100%
100%
BrowserModule in AppModule
100%
100%
UpgradeModule injected in constructor
100%
100%
Correct AngularJS module name
100%
100%
No manual AngularJS bootstrap
100%
100%
Without context: $0.2122 · 2m 16s · 13 turns · 17 in / 2,857 out tokens
With context: $0.3610 · 3m 36s · 17 turns · 431 in / 3,377 out tokens
Service migration and DI interop
@Injectable decorator used
100%
100%
HttpClient used
100%
100%
Observable return type
100%
100%
downgradeInjectable used
100%
100%
downgradeInjectable import source
100%
100%
InjectionToken for legacy service
100%
100%
useFactory with $injector
100%
100%
No $http in Angular service
100%
100%
HttpClient injected via constructor
100%
100%
Migration notes present
100%
100%
TypeScript used
100%
100%
Without context: $0.2263 · 2m 36s · 13 turns · 20 in / 4,117 out tokens
With context: $0.4706 · 4m 26s · 23 turns · 279 in / 5,204 out tokens
Component migration with Reactive Forms
@Input for patient data
100%
100%
@Output for delete action
100%
100%
No $scope in components
100%
100%
Reactive Forms used
100%
100%
FormBuilder injected
100%
100%
Validators applied
100%
100%
@Component decorators present
100%
100%
EventEmitter import
100%
100%
No ng-model in registration
100%
100%
PatientService injected via constructor
100%
100%
TypeScript used
100%
100%
Observable subscription
0%
100%
Without context: $0.1779 · 2m 52s · 12 turns · 18 in / 2,379 out tokens
With context: $0.3872 · 3m 29s · 21 turns · 25 in / 3,788 out tokens
5c5ae21
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.