Angular is Google's currently supported framework for creating single-page web applications. Google uses Angular in several of their own products. Angular gives developers the ability to build web applications that have an experience much like native desktop applications.
What is Angular for?
Angular gives you all the tools and functionality you need to build a dynamic web application that feels like a desktop application. Angular has tools for creating components, managing the flow of data inside of the application, and even doing lower level tasks like making requests for data.
What is a single-page application?
A single-page application is a web application that does not need a full web browser page refresh to show you a new page within the application. Single-page applications have logic inside of them to show users new pages as they navigate through the application. Data is loaded in the background as users interact with the single-page application using JavaScript. Without having to fully reload a web page, single-page applications look and feel much more like desktop applications, and, thanks to loading data in the background, they can respond very quickly to user input.
Angular is actually written in TypeScript - not JavaScript
Angular uses TypeScript for programming instead of JavaScript. TypeScript is a programming language based off of JavaScript that adds helpful features to JavaScript that native JavaScript does not have. TypeScript will not run inside of your web browser, which can only process JavaScript. Angular (and other projects that use TypeScript) includes tools that convert TypeScript into plain JavaScript so you can write your web application using TypeScript and still run your application inside of a web browser.
Why use TypeScript?
As an early programming language, JavaScript lacks many helplful features and additions that newer programming languages include as part of their core functionality. JavaScript’s syntax requirements are also less strict than other programming languages’ requirements. Some languages, like PHP, Python, C++, or Java, have very strict rules around how to organize code or define parts of your program. JavaScript originally did not have those kinds of things.
TypeScript tries to bring these features to JavaScript so JavaScript developers can write safer, less error-prone code that is easier to write, read, and maintain. TypeScript’s features include but are not limited to static typing (this means when declare a variable in your program you have to say it will be a number, a string of letters, or some other type) and stricter conventions about how to organize your code.
Who uses Angular?
Google is probably one of the biggest users of Angular. You can find Angular in Gmail, for example. Several other large companies like Microsoft, Samsung, and Paypal have used Angular at one time or another. A simple web search for who uses Angular should yield a current list of companies and teams that use Angular to build their website or web applications.