Skip to content

Semi-Automatic Migration for Standalone Components in Angular

Notifications You must be signed in to change notification settings

rainerhahnekamp/sam4sc

Repository files navigation

1. Introduction

All Contributors

Sam4Sc is a migration assistant for Angular to SCAM (Single Angular Component Modules) and Standalone Components.

Migrating an Angular application to the SCAM model is a preparation for the final switch to Standalone Components.

Sam4Sc assists in both steps, whereas the migration from SCAM to Standalone Components is fully automatic.

The migration/generation of SCAMs is semi-automatic. The SCAMs a generated first. After that, the developer(s) must define the dependencies per SCAM manually.

2. Setup and Usage

To install Sam4Sc, execute

npm i -D @angular-architects/sam4sc

2.1. Generate SCAMs

npx ng generate @angular-architects/sam4sc:scam --dry-run
# make sure, everything looks alright
npx ng generate @angular-architects/sam4sc:scam

or alternatively,

npx ng generate @angular-architects/sam4sc:scam --project [projectName]

Sam4sc prints out a list of existing SCAMs, and also if components are undeclared.

SCAM is nothing else than an NgModule which declares only one element. It is quite possible that you have already SCAMs in your application.

2.2. Show the progress report for the SCAM report

npx ng generate @angular-architects/sam4sc:report

SCAMs will have a JavaScript comment at the start of the file with a tag SAM4SC:SCAM. Remove those, if you have added the dependencies and that module will not show up in the progress report.

2.3. Migrate to Standalone Components (Beta)

npx ng generate @angular-architects/sam4sc:scam2sc

Please feel free to try it out and give feedback.

3. More information

Angular Architects: Angular Content, Consultancy, Training

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Rainer Hahnekamp

💻

Lars Gyrup Brink Nielsen

💻

hm2075

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

About

Semi-Automatic Migration for Standalone Components in Angular

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •