Putting the WhatsApp Business API on your website
Cloud API versus a click to chat link, message templates, opt in, the 24 hour window and human handover, for a UAE business building WhatsApp into its site.
Read the articleWeb Services
AngularJS support ended in January 2022. What that means in practice, what typically breaks in an AngularJS migration, how to move incrementally rather than all at once, and how to test the result.

AngularJS support ended in January 2022, according to AngularJS’s own documentation, which means a business still running an AngularJS application has no official source of security patches for the framework itself. The practical answer is a planned, usually incremental migration to modern Angular rather than either ignoring the risk or committing to a full rewrite before anything new can ship. What actually breaks tends to be two way data binding, custom directives and dependency injection wiring, not simple syntax.
This guide covers what AngularJS end of support actually means, what typically breaks in a migration to modern Angular, how to move incrementally instead of in one large rewrite, and how to test the result properly before it reaches users.
Key points
AngularJS’s own version support status page states plainly that AngularJS support ended in January 2022, closing an extended support window the Angular team had already put in place for major users. Ended support means no further bug fixes, no further security patches, and no ongoing maintenance from the framework’s own team, on a piece of software that sits directly in a browser facing application handling whatever data that application touches.
This is different from a framework simply being older. An unsupported framework does not stop working the day support ends, which is exactly why the risk is easy to underestimate. The AngularJS code keeps running exactly as before, until a vulnerability is discovered in AngularJS itself or in one of its now unmaintained third party dependencies, at which point there is no official patch coming and a business is left either accepting the exposure or patching it themselves.
This article describes AngularJS’s own published support position in general terms. It is not legal or compliance advice. If your AngularJS application handles regulated personal data, weigh the security exposure of remaining unsupported against your specific obligations with a qualified adviser.
The naming is genuinely confusing. AngularJS, also called Angular 1, is a JavaScript framework built around two way data binding and its own dependency injection system. Angular, versions 2 onward, is a full rewrite: a different architecture, TypeScript by convention rather than plain JavaScript, and a component model that does not map one to one onto AngularJS’s controllers and directives. There is no automatic upgrade path from one to the other, which is why moving between them is properly called a migration rather than an update.
This matters for planning because it rules out the easy answer of simply bumping a version number. An AngularJS migration is closer in scope to porting an application to a new framework than to a routine dependency upgrade, and it should be scoped and budgeted that way from the start.
AngularJS and Angular share a name and little else. Plan the move as a migration, not an upgrade.
Three areas consistently take the most real work. Two way data binding, the pattern AngularJS built its whole model around, has to be re-expressed using Angular’s own binding syntax and change detection, which is a genuine rewrite of that logic rather than a find and replace. Custom AngularJS directives, especially ones with complex linking functions or heavy DOM manipulation, usually need to become Angular components or directives written from scratch against a different API. Dependency injection wiring changes enough between the two frameworks that services registered one way in AngularJS need to be reregistered and often restructured for Angular’s injector.
A fourth, easy to miss area is third party AngularJS libraries with no maintained Angular equivalent. Checking early which external libraries the application depends on, and whether each has a supported Angular replacement, avoids discovering a blocker halfway through the migration rather than during the initial scoping.
A full rewrite, freezing new features until the whole application is rebuilt in Angular, is rarely the right choice for anything beyond a small application, because it stops the business shipping anything else for the length of the project and concentrates all the migration risk into one release. Angular’s own tooling supports a hybrid approach, where AngularJS and Angular components run inside the same application at once, communicating through a compatibility layer, so sections of the application can move across one at a time.
A practical order is to migrate self contained, lower risk screens first to prove the pattern, then move toward the areas with the heaviest AngularJS specific logic, such as complex directives and shared services, once the team has a working rhythm. Shared services and routing tend to be worth migrating early even when they are riskier, because leaving them in AngularJS the longest means every newly migrated screen still has to talk to old, unsupported code underneath it.
List every custom directive, service and third party dependency, and flag which ones have no maintained Angular equivalent before committing to a timeline.
Get AngularJS and Angular running side by side in the same build, so migrated and unmigrated sections of the application can coexist during the project.
Move simpler, self contained screens first to prove the approach, then work through shared services and the heaviest custom directives.
Confirm no route, service or component still calls into AngularJS before removing it from the build entirely, closing the unsupported code exposure for good.
A migrated screen can look identical to the original and still behave differently underneath, because the change detection and data binding model changed even where the markup did not. Automated tests written against the existing AngularJS behaviour, run again against the migrated Angular version of the same screen, catch this kind of regression far more reliably than manual click through testing alone, particularly for form validation, conditional display logic and anything driven by user permissions.
Where the existing AngularJS application has little or no automated test coverage, writing tests against its current behaviour before migrating a section is worth the extra time, because it turns “does this still work” into a question with a clear answer rather than a judgement call under deadline pressure.
The first mistake is treating the migration as optional maintenance that can wait for a quieter quarter. Because an unsupported AngularJS application does not fail visibly the day support ends, it is easy for a Dubai business to keep deprioritising the work until a security issue forces the decision under far worse conditions than a planned migration would have.
The second is committing to a full rewrite without first auditing the existing application’s directives, services and third party dependencies, which tends to produce a timeline built on guesswork rather than the actual size of the job. A short audit before any migration work starts is a small cost against a budget that turns out to be wrong by a wide margin.
The third is skipping tests on the theory that the migrated screens look the same as before. Because AngularJS and Angular handle change detection and data binding differently underneath, a screen that looks unchanged can still behave differently in edge cases, particularly around form validation and conditional logic, which is exactly what automated tests are good at catching before users do.
Our Angular development work covers AngularJS migration projects specifically, from an initial audit of the existing application through a phased, hybrid migration to a fully modern Angular build. Once a migration is complete, our website maintenance plans keep the application on supported dependencies going forward, rather than letting it drift back into the same unsupported position.
If you are still deciding whether to migrate in place or rebuild, our guide on how to choose a CMS for your UAE business and our piece on website launch checklist for a Dubai business are both useful reading alongside this one.
Straight answers
No. AngularJS's own documentation states that AngularJS support officially ended in January 2022, after an earlier extended support period. There are no further official security patches, so a business still running AngularJS is running unpatched, unsupported code in its browser facing application.
No, despite the similar name. AngularJS, sometimes called Angular 1, and Angular, versions 2 and above, are separate frameworks with different architectures, different languages by convention, JavaScript against TypeScript, and no direct upgrade path between them. Moving between them is a genuine migration, not a version update.
Gradual migration is usually possible and usually preferable. Angular's own hybrid tooling allows AngularJS and modern Angular to run side by side in the same application during a phased migration, so features can move across incrementally rather than the whole application being rebuilt before anything ships.
Two way data binding patterns, custom AngularJS directives, and dependency injection wiring are the most common sources of real work, because the underlying concepts changed rather than just the syntax. Third party AngularJS libraries with no modern equivalent are another common blocker worth checking early.
The main risk is a security vulnerability discovered in AngularJS itself, or in one of its unmaintained dependencies, with no official patch available. For a customer facing application handling any personal data, that risk grows the longer the migration is delayed rather than staying constant.
It depends entirely on the size and complexity of the existing application, its test coverage and how many custom directives and services it relies on. A proper scoping exercise against the actual codebase is a more reliable answer than a general estimate.
Sources
Fixed price, in writing
Got it. Your quote is being written now.
In business hours you will have it within 45 minutes. Check your inbox for the confirmation.
Keep reading

Cloud API versus a click to chat link, message templates, opt in, the 24 hour window and human handover, for a UAE business building WhatsApp into its site.
Read the article
Choosing a CMS for a UAE business by who edits it, what it integrates with and who maintains it, not by which platform sounds most impressive.
Read the article
Laravel against WordPress for a Dubai business: where a content site ends, an application begins, and what happens when WordPress is pushed past that line.
Read the article