Migrate from AngularJS to Angular using hybrid mode, incremental component rewriting, and dependency injection updates. Use when upgrading AngularJS applications, planning framework migrations, or ...
Install with Tessl CLI
npx tessl i github:sickn33/antigravity-awesome-skills --skill angular-migration88
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
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
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.