Angular (web framework)

Short description: Open source web application framework

Angular

Developer(s)| Google
Initial release| 2.0 / 14 September 2016; 7 years ago (2016-09-14)[1]
Preview release|

17.1.0-next.0 / 15 November 2023; 7 months ago (2023-11-15)[2]

Repository| Angular Repository
Written in| TypeScript, JavaScript
Platform| Web platform
Type| Web framework
License| MIT License
Website| angular.io

Angular (also referred to as "Angular 2+")[3] is a TypeScript-based, free and open-source single-page web application framework led by the Angular Team at Google and by a community of individuals and corporations. Angular is a complete rewrite from the same team that built AngularJS.

## Contents

* 1 Differences between Angular and AngularJS
* 2 History
* 2.1 Naming
* 2.2 Version History
* 2.3 Future releases
* 2.4 Support policy and schedule
* 3 Libraries
* 3.1 Angular Material
* 3.2 Angular Elements
* 4 See also
* 5 References
* 6 External links

## Differences between Angular and AngularJS

Architecture of an Angular application, services, and dependency injection

Google designed Angular as a ground-up rewrite of AngularJS.

* Angular does not have a concept of "scope" or controllers; instead, it uses a hierarchy of components as its primary architectural characteristic.[4]
* Angular has a different expression syntax, focusing on `"[ ]"` for property binding, and `"( )"` for event binding[5]
* Modularity – much core functionality has moved to modules
* Angular recommends the use of Microsoft's TypeScript language, which introduces the following features:
* Static typing, including Generics
* Type annotations
* Dynamic loading
* Asynchronous template compilations
* Iterative callbacks provided by RxJS.
* Support to run Angular applications on servers.

## History

Angular 2.0 was announced at the ng-Europe conference 22–23 October 2014.[6][7] The drastic changes in the 2.0 version created considerable controversy among developers.[8] On April 30, 2015, the Angular developers announced that Angular 2 moved from Alpha to Developer Preview.[9] Angular 2 moved to Beta in December 2015,[10] and the first release candidate was published in May 2016.[11] The final version was released on 14 September 2016.

On 13 December 2016 Angular 4 was announced, skipping 3 to avoid confusion due to the misalignment of the router package's version which was already distributed as v3.3.0.[12] The final version was released on 23 March 2017.[13]

Features in version 4.3:[citation needed]

* Introducing HttpClient, a smaller, easier-to-use, and more powerful library for making HTTP Requests.
* New router life cycle events for Guards and Resolvers. Four new events: GuardsCheckStart, GuardsCheckEnd, ResolveStart, ResolveEnd join the existing set of life cycle events such as NavigationStart.
* Conditionally disable animations.

Angular 6 was released on 4 May 2018.[14] This is a major release focused less on the underlying framework and more on the toolchain and on making it easier to move quickly with Angular in the future, like ng update, ng add, Angular Elements, Angular Material + CDK Components, Angular Material Starter Components, CLI Workspaces, Library Support, Tree Shakable Providers, Animations Performance Improvements, and RxJS v6.

On 18 October 2018, Angular 7 was released. This version had updates regarding Application Performance, Angular Material & CDK, Virtual Scrolling, Improved Accessibility of Selects, now supports Content Projection using web standard for custom elements, and dependency updates regarding Typescript 3.1, RxJS 6.3, Node 10 (still supporting Node 8).[15]

Angular 8 was released on 28 May 2019. Featuring Differential loading for all application code, Dynamic imports for lazy routes, Web workers, TypeScript 3.4 support, and Angular Ivy as an opt-in preview. Angular Ivy opt-in preview includes:[16]

* Generated code that is easier to read and debug at runtime
* Faster re-build time
* Improved payload size
* Improved template type checking
* Backwards compatibility

Logo from 2016 to 2023 (v2-v16)

Current logo (v17)

Angular 17 was released on November 8, 2023. Some new features include the new Application builder, a new syntax for control flow, a reworked learning and documentation website, and more.[17]

### Naming

The rewrite of AngularJS was called "Angular 2", but this led to confusion among developers. To clarify, the Team announced that separate names should be used for each framework with "AngularJS" referring to the 1.X versions and "Angular" without the "JS" referring to versions 2 and up.[18]

### Version History

Version | Release date | New features  | Notes

|
|
|

Angular 17 | November 8 2023[17] | Application builder, a new syntax for control flow, and a re-worked learning and documentation website.[17] |
Angular 16 | 03 May 2023 | Partial hydration for Angular Universal's Server-side rendering, experimental Jest support, and Esbuild-based build system for development servers.  |
Angular 15 | November 16, 2022 |  |
Angular 14 | 2 June 2022 | Typed forms, standalone components, and new primitives in the Angular CDK (component dev kit).  |
Angular 13 | 4 November 2021[19] |  |
Angular 12 | 12 May 2021[20] | Deprecated support for Internet Explorer 11.  |
Angular 11 | 11 November 2020[21] |  |
Angular 10 | 24 June 2020[22] | New Date Range Picker (Material UI library).  |
Angular 9 | 6 February 2020 | Improved build times, enabling AOT on by default  |
Angular 8 | 28 May 2019 | Differential loading for all application code, Dynamic imports for lazy routes, Web workers, TypeScript 3.4 support, and Angular Ivy as an opt-in preview.[16] |
Angular 7 | 18 October 2018 | Updates regarding Application Performance, Angular Material & CDK, Virtual Scrolling, Improved Accessibility of Selects. Support for Content Projection using web standard for custom elements, and dependency updates regarding Typescript 3.1, RxJS 6.3 and Node 10.[15] |
Angular 6 | 4 May 2018[14] |  |
Angular 5 | 1 November 2017[23] | Support for progressive web apps, a build optimizer and improvements related to Material Design.[24] |
Angular 4.3  |  | New router life cycle events for Guards and Resolvers.  | Minor release, meaning that it contains no breaking changes and that it is a drop-in replacement for Angular 4.x.x.
Angular 4 | 23 March 2017[13] |  | Backward compatible with Angular 2.
Angular 2 | 14 September 2016 |  |

### Future releases

Since v9, the Angular team has moved all new applications to use the Ivy compiler and runtime. They will be working on Ivy to improve output bundle sizes and development speeds.[25]

Each version is expected to be backward-compatible with the prior release. The Angular development team has pledged to do twice-a-year upgrades.

### Support policy and schedule

All the major releases are supported for 18 months. This consists of 6 months of active support, during which regularly-scheduled updates and patches are released. It is then followed by 12 months of long-term support (LTS), during which only critical fixes and security patches are released.[26]

Supported Angular Versions  Version  | Status  | Released  | Active Ends  | LTS Ends

|
|
|
|

^17.0.0  | Active  | Nov 08, 2023  | May 08, 2024  | May 15, 2025
^16.0.0  | LTS  | May 03, 2023  | Nov 08, 2023  | Nov 08, 2024
^15.0.0  | LTS  | Nov 18, 2022  | May 03, 2023  | May 18, 2024

Angular versions v2 to v14 are no longer under support.[27]

## Libraries

### Angular Material

Angular Material is a UI component library that implements Material Design in Angular.[28]

### Angular Elements

In 2018, Angular 6 introduced Angular Elements that lets you package your Angular components as custom web elements, which are part of the web components set of web platform APIs.[29]

## See also

* React
* Vue.js
* Svelte
* Comparison of JavaScript-based web frameworks
* Web framework

## References

1. ↑ "Angular, version 2: proprioception-reinforcement". September 14, 2016. http://angularjs.blogspot.com/2016/09/angular2-final.html.
2. ↑ "angular/CHANGELOG.md". https://github.com/angular/angular/blob/master/CHANGELOG.md.
3. ↑ "AngularJS and Angular 2+: a Detailed Comparison". 6 April 2018. https://www.sitepoint.com/angularjs-vs-angular/.
4. ↑ "Angular Docs". https://angular.io/guide/architecture.
5. ↑ "What's the difference between AngularJS and Angular?". September 19, 2017. https://gorrion.io/blog/angularjs-vs-angular/.
6. ↑ Hamilton, Coman (28 October 2014). "A sneak peek at the radically new Angular 2.0". https://jaxenter.com/angular-2-0-112094.html.
7. ↑ "Ng-Europe schedule". https://2015.ngeurope.org/#schedule.
8. ↑ Hamilton, Coman (29 October 2014). "Angular 2.0 announcement backfires". https://jaxenter.com/angular-2-0-announcement-backfires-112127.html.
9. ↑ @angularjs (30 Apr 2015). "Angular 2 moves from Alpha to Developer Preview! Dev guide and API docs now available at ... angular.io/docs/js/latest". https://twitter.com/angularjs/status/593797019258359809.
10. ↑ "Angular: Angular 2 Beta". http://angularjs.blogspot.it/2015/12/angular-2-beta.html.
11. ↑ "angular/angular". https://github.com/angular/angular/blob/master/CHANGELOG.md#200-rc0-2016-05-02.
12. ↑ "Ok... let me explain: it's going to be Angular 4.0". http://angularjs.blogspot.kr/2016/12/ok-let-me-explain-its-going-to-be.html.
13. ↑ 13.0 13.1 "Angular 4.0.0 Now Available". http://angularjs.blogspot.ca/2017/03/angular-400-now-available.html.
14. ↑ 14.0 14.1 "Version 6.0.0 of Angular Now Available". https://blog.angular.io/version-6-of-angular-now-available-cc56b0efa7a4.
15. ↑ 15.0 15.1 Fluin, Stephen (2018-10-18). "Version 7 of Angular — CLI Prompts, Virtual Scroll, Drag and Drop and more". https://blog.angular.io/version-7-of-angular-cli-prompts-virtual-scroll-drag-and-drop-and-more-c594e22e7b8c.
16. ↑ 16.0 16.1 Fluin, Stephen (2019-02-08). "A plan for version 8.0 and Ivy". https://blog.angular.io/a-plan-for-version-8-0-and-ivy-b3318dfc19f7.
17. ↑ 17.0 17.1 17.2 Gechev, Minko (8 November 2023). "Introducing Angular v17". Angular Blog. https://blog.angular.io/introducing-angular-v17-4d7033312e4b.
18. ↑ "Angular: Branding Guidelines for AngularJS". http://angularjs.blogspot.com/2017/01/branding-guidelines-for-angular-and.html.
19. ↑ Thompson, Mark (4 November 2021). "Angular v13 is now Available". https://blog.angular.io/angular-v13-is-now-available-cce66f7bc296.
20. ↑ Thompson, Mark (2021-05-12). "Angular v12 is now available" (in en). https://blog.angular.io/angular-v12-is-now-available-32ed51fbfd49.
21. ↑ "Version 11 of Angular Now Available". 4 December 2020. https://blog.angular.io/version-11-of-angular-now-available-74721b7952f7.
22. ↑ "Version 10 of Angular Now Available". 25 June 2020. https://blog.angular.io/version-10-of-angular-now-available-78960babd41.
23. ↑ Fluin, Stephen. "Version 5.0.0 of Angular Now Available". https://blog.angular.io/version-5-0-0-of-angular-now-available-37e414935ced.
24. ↑ "Angular 5 JavaScript framework delayed". 18 September 2017. https://www.infoworld.com/article/3225511/javascript/angular-5-javascript-framework-delayed.html.
25. ↑ Fluin, Stephen (6 February 2020). "Version 9 of Angular Now Available — Project Ivy has arrived!". https://blog.angular.io/version-9-of-angular-now-available-project-ivy-has-arrived-23c97b63cfa3.
26. ↑ "Angular". https://angular.io/guide/releases#support-policy-and-schedule.
27. ↑ "Angular". https://angular.io/guide/releases#support-policy-and-schedule.
28. ↑ "Angular Material". https://material.angular.io/.
29. ↑ "How to create Angular 6 Custom Elements and Web Components". 29 September 2018. https://www.freecodecamp.org/news/how-to-create-angular-6-custom-elements-web-components-c88814dc6e0a/.

## External links

* Official website
* Archived website (Angular 2)

* v
* t
* e

Web frameworks

* Comparison

C++|

* CppCMS
* Wt

CLI|

* ASP.NET
* Core
* AJAX
* Dynamic Data
* MVC
* Razor
* Web Forms
* DNN
* BFC
* MonoRail
* OpenRasta
* Umbraco
* WebSharper

ColdFusion|

* CFWheels
* ColdBox Platform
* ColdSpring
* Fusebox
* Model-Glue

Common Lisp|

* Caveman2
* CL-HTTP
* Weblocks

Haskell|

* Yesod
* Snap

Java|

* AppFuse
* Flexive
* Grails
* GWT
* ICEfaces
* ItsNat
* JavaServer Faces
* JHipster
* Jspx
* JWt
* OpenXava
* Play
* Remote Application Platform
* RIFE
* Seam
* Sling
* Spring
* Stripes
* Struts
* Tapestry
* Vaadin
* Vert.x
* WebWork
* Wicket
* WaveMaker
* ZK

JavaScript|

* Angular/AngularJS
* Backbone.js
* Chaplin.js
* Closure
* Dojo Toolkit
* Ember.js
* Express.js
* Ext JS
* jQuery
* Knockout.js
* Meteor
* MooTools
* Node.js
* OpenUI5
* Prototype
* React
* Rico
* script.aculo.us
* Sencha Touch
* SproutCore
* Svelte
* Vue.js
* Wakanda

Perl|

* Catalyst
* Dancer
* Mason
* Maypole
* Mojolicious
* WebGUI

PHP|

* CakePHP
* CodeIgniter
* Drupal
* Fat-Free
* FuelPHP
* Flow
* Grav
* Gyroscope
* Horde
* Joomla
* Kohana
* Laravel
* Lithium
* Midgard
* MODX
* Nette
* Phalcon
* PHP-Fusion
* Pop PHP
* PRADO
* ProcessWire
* Qcodo
* Silex
* SilverStripe
* Symfony
* TYPO3
* WordPress
* XOOPS
* Yii
* Zend Framework

Python|

* BlueBream
* CherryPy
* Django
* Flask
* Grok
* Nevow
* Pyjs
* Pylons
* Pyramid
* Quixote
* TACTIC
* Tornado
* TurboGears
* web2py
* Webware
* Zope 2
* more...

Ruby|

* Camping
* Merb
* Padrino
* Ruby on Rails
* Sinatra

Scala|

* Lift
* Play
* Scalatra

Smalltalk|

* AIDA/Web
* Seaside

Other languages|

* Vibe.d (D)
* Application Express (PL/SQL)
* Grails (Groovy)
* Kepler (Lua)
* OpenACS (Tcl)
* Phoenix (Elixir)
* SproutCore (JavaScript-Ruby)
* Yaws (Erlang)

* v
* t
* e

ECMAScript

Dialects|

* ActionScript
* Caja
* JavaScript
* engines
* asm.js
* JScript
* JScript .NET
* QtScript
* TypeScript
* WMLScript

Engines
(comparison)|

* Carakan
* Futhark
* InScript
* JavaScriptCore
* JScript
* KJS
* Linear B
* Narcissus
* QtScript
* Rhino
* SpiderMonkey
* TraceMonkey
* JägerMonkey
* Tamarin
* V8
* ChakraCore
* Chakra
* JScript .NET
* Nashorn

Frameworks|

| Client-side|

* Chaplin.js
* Dojo
* Echo
* Ext JS
* Google Web Toolkit
* jQuery
* Lively Kernel
* midori
* MochiKit
* MooTools
* Prototype
* Pyjs
* qooxdoo
* Rialto
* Rico
* script.aculo.us
* SmartClient
* SproutCore
* Spry
* Wakanda Framework

|

Server-side|

* AppJet
* Jaxer
* Node.js
* WakandaDB

Multiple|

* Cappuccino
* Objective-J
* PureMVC

Libraries|

* Backbone.js
* SWFObject
* SWFAddress
* Underscore.js

People|

* Brendan Eich
* Douglas Crockford
* John Resig
* Scott Isaacs

Other|

* DHTML
* Ecma International
* JSDoc
* JSGI
* JSHint
* JSLint
* JSON
* JSSS
* Sputnik
* SunSpider
* Asynchronous module definition
* CommonJS

Lists
JavaScript libraries
Ajax frameworks
Comparisons
JavaScript frameworks
server-side JavaScript

* v
* t
* e

Node.js

Platform|

* Node.js
* NPM
* V8
* CommonJS

Frameworks|

* MEAN
* MongoDB
* Express.js
* AngularJS/Angular
* MEEN (substituted with Ember.js)
* Backbone.js
* Meteor

Libraries|

* Lodash
* Underscore.js
* React.js
* Vue.js

Languages|

* JavaScript
* CoffeeScript
* TypeScript

* v
* t
* e

Google free and open-source software (FOSS)

Software|

| Applications|

* Chromium
* OpenRefine
* Tesseract

|

Programming languages|

* Dart
* Go
* Sawzall

Frameworks and
development tools|

* AMP
* Angular
* AngularJS
* Beam
* Blockly
* Closure Tools
* Cpplint
* FlatBuffers
* Flutter
* Gears
* Gerrit
* Guava
* gRPC
* Gson
* Guetzli
* Guice
* gVisor
* Kubernetes
* LevelDB
* libvpx
* Polymer
* TensorFlow

Operating systems|

* AOSP
* Chromium OS
* Fuchsia
* gLinux
* Goobuntu

Related|

* Code-in
* Open Source Security Foundation
* Summer of Code

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Angular (web framework). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Software:Angular_(web_framework)&oldid=3455900"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template