Angular 2 logo

Angular 2

A platform for building mobile and desktop web applications
3.8K
2.9K
+ 1
365

What is Angular 2?

It is a TypeScript-based open-source web application framework. It 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 63.9K GitHub stars and 17.2K GitHub forks. Here’s a link to Angular 2's open source repository on GitHub

Who uses Angular 2?

Companies
689 companies reportedly use Angular 2 in their tech stacks, including Bitpanda, Queue-it, and Immowelt AG.

Developers
2947 developers on StackShare have stated that they use Angular 2.

Angular 2 Integrations

Firebase, Sentry, Socket.IO, Bugsnag, and Angular CLI are some of the popular tools that integrate with Angular 2. Here's a list of all 32 tools that integrate with Angular 2.
Public Decisions about Angular 2

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 · | 25 upvotes · 197.5K views

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

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
Praveen Mooli
Praveen Mooli
Engineering Manager at Taylor and Francis · | 13 upvotes · 1.2M views

We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

To build #Webapps we decided to use Angular 2 with RxJS

#Devops - GitHub , Travis CI , Terraform , Docker , Serverless

See more
Max Musing
Max Musing
Founder & CEO at BaseDash · | 9 upvotes · 61.9K views

From my experience of the early startup world, a majority of companies these days use Node.js. Python and Go are the next biggest languages, but significantly smaller than Node.

However, if you're having trouble with the front end aspect of Django, using Node probably won't make that easier for you. You'll have a lot more options between front end frameworks (React, Vue.js, Angular 2) , but they'll definitely take more time to learn than Django's templating system.

Think about whether you want to focus on front end or back end for now, and make a decision from there.

See more
Mohammad Gholami
Mohammad Gholami
Golang and Laravel Developer at m6devin · | 9 upvotes · 58.6K views
Shared insights
on
LaravelLaravelMySQLMySQLAngular 2Angular 2GoGo

We were working hard on a project for ambulance dispatching system. The main components developed using Laravel . It aided us to develop the application very fast. We used MySQL as the DBMS and Angular 2 for frontend developing. After a year, the growing number of requests made us scale some specific APIs. So we decided to use Go to handle them. It was just wonderful!

See more
Jean Francois Rebaud
Jean Francois Rebaud

Kubernetes GitLab CI Cassandra ExpressJS Angular 2

I start a new project of a plateform to make an iventory of bands in my musical style preference I choose

  1. for the BackEnd: Express, Casssandra Express because I want to use API and compatibilitie with others front plateform and Cassandra about is performance of scalability

  2. for the Frontend: Angular because it's a real framework and this structure is perfect to add and update new features to make easily evolution

It's the begening of the project and I'll come back for future informations and discussion about problems that must resolved

See more

Angular 2's Features

  • Progressive Web Apps
  • Native
  • Code Generation
  • Code Splitting

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
It 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 Followers
2886 developers follow Angular 2 to keep up with related blogs and decisions.
Sergey Rodovinsky
Medhat Ezzat Gerges
Saurabh Gangamwar
Dan B
Romain Cambonie
Shyam Manavat
Jhonatan Frade
Eleyowo Michael
Marc Gavanier
spdeux