{"id":48715,"library":"ngxsmk-migrate","title":"ngxsmk-migrate","description":"ngxsmk-migrate is an AI-powered Angular migration toolkit that automates upgrades from legacy Angular patterns (NgModules, RxJS BehaviorSubjects, *ngIf/*ngFor) to modern standalone components, signals, and control flow. It integrates with Gemini 1.5, OpenAI, and Anthropic for intelligent refactoring and detailed upgrade reports. Key features include AST-based transformations, gradual migration support, and a CLI for analyzing and fixing Angular applications. Version 1.2.1 is the current stable release; updates are frequent. Differs from other migration tools (like ng generate) by using AI to understand project-specific architecture and suggest optimized replacements, not just template-based codemods.","status":"active","version":"1.2.1","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","angular","angular-migration","angular-ai","angular-upgrade","signals","standalone","typescript","schematics"],"install":[{"cmd":"npm install ngxsmk-migrate","lang":"bash","label":"npm"},{"cmd":"yarn add ngxsmk-migrate","lang":"bash","label":"yarn"},{"cmd":"pnpm add ngxsmk-migrate","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"The package is designed to be used globally via npx or global install; local install also works but CLI entry point is 'ngxsmk-migrate'.","wrong":"npm install ngxsmk-migrate (local install then run)","symbol":"ngxsmk-migrate (CLI)","correct":"npx ngxsmk-migrate analyze ."},{"note":"The package currently ships as CommonJS; ESM import is not supported yet. Use require() for Node.js usage.","wrong":"import { analyze } from 'ngxsmk-migrate';","symbol":"Programmatic API","correct":"const { analyze } = require('ngxsmk-migrate');"},{"note":"Environment variable names differ by provider: GOOGLE_API_KEY for Gemini, OPENAI_API_KEY for ChatGPT, ANTHROPIC_API_KEY for Claude. Setting the wrong variable will cause provider authentication failures.","wrong":"process.env.API_KEY = '...';","symbol":"AI Provider Configuration","correct":"process.env.GOOGLE_API_KEY = '...';"}],"quickstart":{"code":"npm install -g ngxsmk-migrate\nexport GOOGLE_API_KEY=\"your-api-key\"\ncd my-angular-project\nngxsmk-migrate analyze .\nngxsmk-migrate fix .","lang":"javascript","description":"Installs the CLI globally, sets the Gemini API key, then analyzes and fixes an Angular project for modern patterns."},"warnings":[{"fix":"Ensure your environment has internet access and valid API keys for the chosen AI provider.","message":"The CLI commands 'analyze' and 'fix' require network access to AI APIs. Offline usage will fail unless API keys are set and internet is available.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use require('ngxsmk-migrate') instead of import.","message":"Programmatic API is CommonJS only; using ESM import will throw 'ERR_REQUIRE_ESM' error.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Run 'ngxsmk-migrate analyze .' first to review changes, or use version control.","message":"The 'fix' command modifies files in place. There is no undo; backup your project before running.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Upgrade your Angular project to at least version 15 before using ngxsmk-migrate.","message":"Support for Angular versions < 15 is deprecated and may be removed in future releases.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Use a provider with higher rate limits (e.g., Gemini) or split the project into smaller parts.","message":"Running on large projects may hit API rate limits or token limits for the AI provider, causing incomplete migrations.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'1.2.1':70 '1.5':39 'ai':10,89,113 'ai-pow':9 'analyz':64 'angular':12,20,67,107,109,112,115 'angular-ai':111 'angular-migr':108 'angular-upgrad':114 'anthrop':42 'applic':68 'architectur':95 'ast':54 'ast-bas':53 'autom':16 'base':55,104 'behaviorsubject':24 'cli':62 'codemod':105 'compon':30 'control':33 'current':73 'detail':47 'differ':79 'featur':51 'fix':66 'flow':34 'frequent':78 'gemini':38 'generat':86 'gradual':57 'includ':52 'integr':36 'intellig':44 'javascript':106 'key':50 'legaci':19 'like':84 'migrat':3,6,13,58,82,110 'modern':28 'ng':85 'ngfor':26 'ngif':25 'ngmodul':22 'ngxsmk':2,5 'ngxsmk-migrat':1,4 'openai':40 'optim':98 'pattern':21 'power':11 'project':93 'project-specif':92 'refactor':45 'releas':75 'replac':99 'report':49 'rxjs':23 'schemat':120 'signal':31,117 'specif':94 'stabl':74 'standalon':29,118 'suggest':97 'support':59 'templat':103 'template-bas':102 'tool':83 'toolkit':14 'transform':56 'typescript':119 'understand':91 'updat':76 'upgrad':17,48,116 'use':88 'version':69","created_at":"2026-06-07T16:58:05.348858+00:00","updated_at":"2026-06-07T16:58:05.348858+00:00","problems":[{"fix":"Install globally: npm install -g ngxsmk-migrate or use npx: npx ngxsmk-migrate","cause":"The package is not installed globally or locally.","error":"Error: Cannot find module 'ngxsmk-migrate'"},{"fix":"Set GOOGLE_API_KEY (or OPENAI_API_KEY/ANTHROPIC_API_KEY) in your environment.","cause":"The AI provider requires an API key, but it is not set.","error":"Error: API key not configured. Please set GOOGLE_API_KEY environment variable."},{"fix":"Use CommonJS require: const { analyze } = require('ngxsmk-migrate');","cause":"Attempting to import the package using ESM syntax.","error":"TypeError: analyze is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"ngxsmk-migrate","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}