What is Angular 2?

Angular is a development platform for building mobile and desktop web applications.
Angular 2 is a tool in the Javascript MVC Frameworks category of a tech stack.
Angular 2 is an open source tool with 49K GitHub stars and 13.2K GitHub forks. Here’s a link to Angular 2's open source repository on GitHub

Who uses Angular 2?

Companies
245 companies use Angular 2 in their tech stacks, including WePay, AgoraPulse, and Beam.

Developers
216 developers use Angular 2.

Angular 2 Integrations

Sentry, Bugsnag, Protractor, Prisma Cloud, and Uploadcare are some of the popular tools that integrate with Angular 2. Here's a list of all 16 tools that integrate with Angular 2.

Why developers like Angular 2?

Here’s a list of reasons why companies and developers use Angular 2
Angular 2 Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose Angular 2 in their tech stack.

Eyas Sharaiha
Eyas Sharaiha
Software Engineer at Google · | 20 upvotes · 18.9K views
atGoogle
RxJS
Angular 2
TypeScript
#Frontend
#Async
#RXJS
#Angular
#Typescript

One TypeScript / Angular 2 code health recommendation at Google is how to simplify dealing with RxJS Observables. Two common options in Angular are subscribing to an Observable inside of a Component's TypeScript code, versus using something like the AsyncPipe (foo | async) from the template html. We typically recommend the latter for most straightforward use cases (code without side effects, etc.)

I typically review a fair amount of Angular code at work. One thing I typically encourage is using plain Observables in an Angular Component, and using AsyncPipe (foo | async) from the template html to handle subscription, rather than directly subscribing to an observable in a component TS file.

Subscribing in components

Unless you know a subscription you're starting in a component is very finite (e.g. an HTTP request with no retry logic, etc), subscriptions you make in a Component must:

  1. Be closed, stopped, or cancelled when exiting a component (e.g. when navigating away from a page),
  2. Only be opened (subscribed) when a component is actually loaded/visible (i.e. in ngOnInit rather than in a constructor).

AsyncPipe can take care of that for you

Instead of manually implementing component lifecycle hooks, remembering to subscribe and unsubscribe to an Observable, AsyncPipe can do that for you.

I'm sharing a version of this recommendation with some best practices and code samples.

#Typescript #Angular #RXJS #Async #Frontend

See more
ConfigCat
ConfigCat
at ConfigCat · | 12 upvotes · 15.7K views
atConfig Cat
.NET
MySQL
Visual Studio Code
Angular 2
C#
TypeScript
Linode
#Frontend
#Backend
#Configcat

When designing the architecture for #Configcat , we were dreaming of a system that runs on a small scale on low-cost infrastructure at the beginning and scales well later on when the requirements change. Should be platform independent, high performing and robust at the same time. Since most of our team were born and raised using Microsoft's enterprise-grade technologies in the last decade, we wanted to build on that experience. Finding the best solution was quite challenging. Finally, we came up with the idea of a .NET Core backend because it runs on all platforms highly scalable and we could start up with 5$ Linode Linux server. As a #frontend framework, we have chosen Angular mostly because of TypeScript which felt familiar and was easy to get used to after strongly typed languages like C# and the community support behind Angular 2 is awesome. Visual Studio Code makes the coding sessions with Live Share great fun and very productive. MySQL as a database is again is very affordable in the beginning, performs great a scales well and integrates with .NET Core's Entity Framework super easy.

See more
Arik Fraimovich
Arik Fraimovich
Vue.js
React
Angular 2
AngularJS

When Redash was created 5 years ago we chose AngularJS as our frontend framework, but as AngularJS was replaced by Angular 2 we had to make a new choice. We decided that we won't migrate to Angular, but to either React or Vue.js. Eventually we decided to migrate to React for the following reasons:

  1. Many in our community are already using React internally and will be able to contribute.
  2. Using react2angular we can do the migration gradually over time instead of having to invest in a big rewrite while halting feature development.

So far the gradual strategy pays off and in the last 3 major releases we already shipped React code in the Angular.js application.

See more
Markdown
Docker
JSON
TypeScript
Atom
Visual Studio Code
Angular 2
#Sass
#HTML
#Java
#Typescript

More than year ago I was looking for the best editor of Angular 2 application and I've tried Visual Studio Code and Atom. Atom had performance issues that put me off completely to use it again. Visual Studio Code became my main editor #Typescript files (and partly editor of #Java files). I'm happy with Visual Studio Code and I've never look back on Atom. There wasn't any reason to try Atom again, because Visual Studio Code fulfills my requirements very well. I use it for editing of TypeScript, #HTML, #Sass, JSON, Docker and Markdown.

See more
Pierre Chapuis
Pierre Chapuis
at Pierre Chapuis · | 6 upvotes · 3.7K views
atChilli
Angular 2

We chose Angular 2 (version 7 actually) because our product has a rather complex backend, most of which is visible only to our employees and contractors.

The "full featured" approach of Angular as well as the way it deals with the data model suited this business case well. We also use the Reactive Forms module a lot, as well as Clarity (an Open Source design system by VMWare) for the internal parts of the frontend. We also intend to use Angular's offline features.

See more
ASP.NET
Puppeteer
vuex
ExpressJS
React
Angular 2
Vue.js
Netlify
Heroku
#Seo
#Heroku

I found Heroku to be a great option to get ExpressJS up and running with very little hustle. The free tier is great, but I'd recommend to set up a cronjob to visit your site every few minutes so that the server stays awake. Netlify was the option to host the front-end because doing the server side rendering on #Heroku would have taken a little more time than I'd like to. For the moment pre-rendering the app with prerender-spa-plugin is enough to help with #seo. Puppeteer was my choice over other options because it made it easier to scrape websites made on ASP.NET which is what I needed in this case. And Vue.js is my top choice at the moment because it's really beginner friendly and it has a lot of the features I like about Angular 2 and React. vuex is a must in most of the app I build.

See more

Angular 2 Alternatives & Comparisons

What are some alternatives to Angular 2?
React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
Polymer
Polymer is a new type of library for the web, designed to leverage the existing browser infrastructure to provide the encapsulation and extendability currently only available in JS libraries. Polymer is based on a set of future technologies, including Shadow DOM, Custom Elements and Model Driven Views. Currently these technologies are implemented as polyfills or shims, but as browsers adopt these features natively, the platform code that drives Polymer evacipates, leaving only the value-adds.
Aurelia
Aurelia is a next generation JavaScript client framework that leverages simple conventions to empower your creativity.
Vue.js
Vue.js is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API.
Meteor
A Meteor application is a mix of JavaScript that runs inside a client web browser, JavaScript that runs on the Meteor server inside a Node.js container, and all the supporting HTML fragments, CSS rules, and static assets.
See all alternatives

Angular 2's Stats