Angular
FrontendAngular, now in version 15, remains a robust and well-maintained front-end framework that continues to build new features on its solid foundation. Angular offers excellent tools for building large-scale applications.
For instance, it includes built-in capabilities for setting up and managing a monorepo, simplifying the sharing of components across multiple projects. As a framework, Angular takes an opinionated approach to solving various problems, reducing the need for extensive decision-making while maintaining consistency, yet still providing flexibility where necessary. Angular 15 further stabilizes standalone components, a feature introduced in Angular 14, with the aim of simplifying Angular applications and reducing module complexity, addressing a common criticism of Angular.
The ease of upgrading to new versions has improved significantly due to the framework's stability and the detailed migration guides provided by the maintainers.
Actually in version 11 Angular has become an adult SPA framework with much faster build time and significant smaller production builds. Updating to newer versions has become mostly a "no-brainer" which helps us to integrate the latest community bug-fix & improvements on a friday during a cup of coffee. Angular ships as a fully integrated development platform from scaffolding, code generation, routing, guarding, unit/e2e-testing, multi-language builds (i18n) and stable dev/build processes and keeping it extensible at the same time. This holistic nature of Angular makes it in the beginning way more difficult to learn but once understood it's a great candidate to go very fast into "requirement implementation" aka providing early value rather than library wiring. Beside the existing telco-industry projects we've actually also chosen Angular for resource critical industry 4.0 / embedded projects. Here we've selected Angular beside the performance aspects to fulfill requirements like adaptive multi device support (custom hardware buttons, tablets and laptops) on the one hand and on the other hand to reduce the risk loosing time by having too many self-managed external dependencies.
In addition to numerous major upgrades from version 2 to 5, which often needed a "hands-on" approach, a lot has happened in the Angular ecosystem in 2017. Specifically, the improvements in the HTTP-Client, which now requires less coding effort. Or the vast improvements on angular.cli such as aot (ahead of time compile) for faster rendering, fewer requests and much smaller builds, to just name the most important ones.
We have achieved particularly good results using Angular in large and medium-size projects. Actually, it's our framework-of-choice in our telecommunication sector teams as a single-page application framework (SPA) for microservice front ends.
The convenient scaffolding of unit- and end-to-end-tests provides a quality-driven workflow. Also, the module- and component architecture helps to keep the codebase understandable end maintainable.
The latest version of the Angular Framework, which is used for large single-page applications.
Angular is a complete rewrite of Angular 1 — many things have changed compared to the first version. The latest best practices and toolings from the JavaScript community have found their way into Angular.
It supports DI (dependency injection), it has a clean inheritance and a good separation of concerns. Angular follows the web component standards to avoid negative side effects between components.
We think that Angular is well-structured on both a development and an application level.
When talking about Angular, we must consider the angular.cli as well, which provides a huge level of intelligent automation along the development process and project setup.