Angular
Endless Lifecycle Support (ELS) for Angular from TuxCare provides security fixes for Angular versions that have reached their end of life. This allows you to continue running Angular applications without vulnerability concerns, even after official support has ended.
Supported Angular Versions
Angular versions from 4 to 19 are supported.
Installation
Docker compatiblePrerequisites
- npm version 9.6.3 or later
Check current version:npm --version
Update npm:npm install -g npm@latest - TuxCare registry token — contact sales@tuxcare.com
- To browse available artifacts, visit TuxCare Nexus and click Sign in in the top right corner. You may need to refresh the page after logging in.
Create or update the .npmrc file
Navigate to the root directory of your Angular project and create a
.npmrcfile or update it if it already exists.Example:
my-angular-project/ ├── src/ ├── angular.json ├── package.json ├── .npmrc ⚠️ ← Create it here └── tsconfig.jsonConfigure the npm registry
Use an editor of your choice (e.g., VS Code) to add the following registry address lines to the
.npmrcfile:registry=https://registry.npmjs.org/ @els-angular:registry=https://nexus.repo.tuxcare.com/repository/els_angular/ //nexus.repo.tuxcare.com/repository/els_angular/:_auth=${TOKEN}Replace
${TOKEN}with the token you received from sales@tuxcare.com.Update dependencies
Manually update your
package.jsonfile by replacing Angular dependencies with TuxCare-maintained packages.Choose Angular version:Use "SSR ON" if your project is configured with Server-Side Rendering, otherwise use "SSR OFF".
To check whether your Angular project is configured with Server-Side Rendering, look for
@angular/ssrlisted in your originalpackage.jsonfile before replacing dependencies. If you see@angular/ssrlisted, SSR is ON, otherwise SSR is OFF."dependencies": { "@angular/common": "npm:@els-angular/angular-common@>=19.2.21-tuxcare.1", "@angular/compiler": "npm:@els-angular/angular-compiler@>=19.2.21-tuxcare.1", "@angular/core": "npm:@els-angular/angular-core@>=19.2.21-tuxcare.1", "@angular/forms": "npm:@els-angular/angular-forms@>=19.2.21-tuxcare.1", "@angular/platform-browser": "npm:@els-angular/angular-platform-browser@>=19.2.21-tuxcare.1", "@angular/platform-browser-dynamic": "npm:@els-angular/angular-platform-browser-dynamic@>=19.2.21-tuxcare.1", "@angular/platform-server": "npm:@els-angular/angular-platform-server@>=19.2.21-tuxcare.1", "@angular/router": "npm:@els-angular/angular-router@>=19.2.21-tuxcare.1", "@angular/ssr": "npm:@els-angular/angular-ssr@>=19.2.25-tuxcare.1" }, "devDependencies": { "@angular-devkit/build-angular": "19.2.21", "@angular/cli": "npm:@els-angular/angular-cli@>=19.2.25-tuxcare.1", "@angular/compiler-cli": "npm:@els-angular/angular-compiler-cli@>=19.2.21-tuxcare.1" }, "overrides": { "@angular/common": "npm:@els-angular/angular-common@>=19.2.21-tuxcare.1", "@angular/compiler": "npm:@els-angular/angular-compiler@>=19.2.21-tuxcare.1", "@angular/core": "npm:@els-angular/angular-core@>=19.2.21-tuxcare.1", "@angular/forms": "npm:@els-angular/angular-forms@>=19.2.21-tuxcare.1", "@angular/platform-browser": "npm:@els-angular/angular-platform-browser@>=19.2.21-tuxcare.1", "@angular/platform-browser-dynamic": "npm:@els-angular/angular-platform-browser-dynamic@>=19.2.21-tuxcare.1", "@angular/platform-server": "npm:@els-angular/angular-platform-server@>=19.2.21-tuxcare.1", "@angular/router": "npm:@els-angular/angular-router@>=19.2.21-tuxcare.1", "@angular/compiler-cli": "npm:@els-angular/angular-compiler-cli@>=19.2.21-tuxcare.1", "@angular/localize": "npm:@els-angular/angular-localize@>=19.2.21-tuxcare.1", "@angular/service-worker": "npm:@els-angular/angular-service-worker@>=19.2.21-tuxcare.1", "@angular/ssr": "npm:@els-angular/angular-ssr@>=19.2.25-tuxcare.1", "@angular/cli": "npm:@els-angular/angular-cli@>=19.2.25-tuxcare.1" }If you use any of the following non-default Angular modules, update their versions as shown below:
- "@angular/animations": "npm:@els-angular/angular-animations@>=19.2.21-tuxcare.1",
- "@angular/language-service": "npm:@els-angular/angular-language-service@>=19.2.21-tuxcare.1",
- "@angular/upgrade": "npm:@els-angular/angular-upgrade@>=19.2.21-tuxcare.1",
- "@angular/elements": "npm:@els-angular/angular-elements@>=19.2.21-tuxcare.1",
- "@angular/service-worker": "npm:@els-angular/angular-service-worker@>=19.2.21-tuxcare.1",
After adding these aliases, make sure the same modules are also listed in the
overridessection, just like the default ones.Refresh the project dependencies
Remove
node_modules,package-lock.json, and clear the npm cache:rm -rf node_modules package-lock.json && npm cache clean --forceInstall dependencies:
npm installThe token for the TuxCare repository is automatically picked up from your
.npmrcfile.Verify the setup
Use npm to list the project's dependencies and confirm TuxCare packages are resolved correctly:
npm listAfter reviewing the dependencies, run your application to ensure everything works correctly. The
npmtool should be able to identify and resolve dependencies from the TuxCare ELS for Angular repository.
