What is AngularJS and what are its top alternatives?
Top Alternatives to AngularJS
- JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles. ...
- Angular 2
It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications. ...
- 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. ...
- Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. ...
- jQuery
jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML. ...
- PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world. ...
- Angular CLI
A command-line interface tool that you use to initialize, develop, scaffold, and maintain Angular applications. You can use the tool directly in a command shell, or indirectly through an interactive UI such as Angular Console. ...
- Vue.js
It is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API. ...
AngularJS alternatives & related posts
JavaScript
- Can be used on frontend/backend1.6K
- It's everywhere1.5K
- Lots of great frameworks1.1K
- Fast886
- Light weight735
- Flexible416
- You can't get a device today that doesn't run js384
- Non-blocking i/o284
- Ubiquitousness233
- Expressive188
- Extended functionality to web pages51
- Relatively easy language44
- Executed on the client side42
- Relatively fast to the end user26
- Pure Javascript22
- Functional programming17
- Async11
- Setup is easy8
- Its everywhere7
- Because I love functions7
- JavaScript is the New PHP7
- Like it or not, JS is part of the web standard7
- Full-stack7
- Expansive community6
- Future Language of The Web6
- Can be used in backend, frontend and DB6
- Evolution of C5
- Everyone use it5
- Love-hate relationship5
- Easy to hire developers5
- Supports lambdas and closures5
- Agile, packages simple to use5
- Popularized Class-Less Architecture & Lambdas5
- For the good parts5
- Everywhere4
- Hard not to use4
- Promise relationship4
- Scope manipulation4
- It's fun4
- Client processing4
- Nice4
- Easy to make something4
- Can be used on frontend/backend/Mobile/create PRO Ui4
- Easy4
- Photoshop has 3 JS runtimes built in4
- Can be used both as frontend and backend as well4
- Most Popular Language in the World4
- It let's me use Babel & Typescript4
- What to add4
- Clojurescript4
- Function expressions are useful for callbacks4
- No need to use PHP4
- Its fun and fast4
- Powerful4
- Versitile4
- Client side JS uses the visitors CPU to save Server Res4
- 1.6K Can be used on frontend/backend4
- Stockholm Syndrome4
- Because it is so simple and lightweight3
- Only Programming language on browser3
- JavaScript j.s2
- Acoperișul 07576043352
- A constant moving target, too much churn21
- Horribly inconsistent20
- Javascript is the New PHP14
- No ability to monitor memory utilitization8
- Shows Zero output in case of ANY error6
- Can be ugly5
- Thinks strange results are better than errors4
- No GitHub2
- Slow1
related JavaScript posts
Oof. I have truly hated JavaScript for a long time. Like, for over twenty years now. Like, since the Clinton administration. It's always been a nightmare to deal with all of the aspects of that silly language.
But wowza, things have changed. Tooling is just way, way better. I'm primarily web-oriented, and using React and Apollo together the past few years really opened my eyes to building rich apps. And I deeply apologize for using the phrase rich apps; I don't think I've ever said such Enterprisey words before.
But yeah, things are different now. I still love Rails, and still use it for a lot of apps I build. But it's that silly rich apps phrase that's the problem. Users have way more comprehensive expectations than they did even five years ago, and the JS community does a good job at building tools and tech that tackle the problems of making heavy, complicated UI and frontend work.
Obviously there's a lot of things happening here, so just saying "JavaScript isn't terrible" might encompass a huge amount of libraries and frameworks. But if you're like me, yeah, give things another shot- I'm somehow not hating on JavaScript anymore and... gulp... I kinda love it.











How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
- It's a powerful framework100
- Straight-forward architecture49
- TypeScript42
- Great UI and Business Logic separation41
- Powerful, maintainable, fast39
- Amazing CLI37
- Great mvc31
- Powerfull Dependency Injection24
- Easy to build18
- Opinionated, batteries-included approach14
- All in one Framework12
- Schematics9
- Solid Standard Setup.8
- Performance7
- Structured7
- Complex4
- Only for single page applications4
- Builders3
- Ng upgrade2
- RxJS2
- React0
- Overcomplicated9
- Large overhead in file size and initialization time9
- Ugly code2
- Cringe2
- CLI not open to other test and linting tools2
related Angular 2 posts
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:
- Many in our community are already using React internally and will be able to contribute.
- 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.
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.
- Components773
- Virtual dom656
- Performance566
- Simplicity490
- Composable437
- Data flow175
- Declarative161
- Isn't an mvc framework124
- Reactive updates113
- Explicit app state111
- JSX38
- Learn once, write everywhere23
- Uni-directional data flow19
- Easy to Use17
- Works great with Flux Architecture14
- Great perfomance10
- Built by Facebook8
- Javascript7
- Speed5
- TypeScript support5
- Easy to start4
- Awesome4
- Feels like the 90s4
- Hooks4
- Scalable4
- Fancy third party tools3
- Server side views3
- Props3
- Obama3
- Functional3
- Rich ecosystem2
- Allows creating single page applications2
- Sdfsdfsdf2
- Beautiful and Neat Component Management2
- Very gentle learning curve2
- Has functional components2
- Simple2
- Closer to standard JavaScript and HTML than others2
- Super easy2
- Has arrow functions2
- Strong Community2
- Great migration pathway for older systems2
- SSR2
- Fast evolving2
- Simple, easy to reason about and makes you productive2
- Excellent Documentation2
- Scales super well2
- Just the View of MVC2
- Server Side Rendering2
- Cross-platform2
- Permissively-licensed1
- Sharable1
- Every decision architecture wise makes sense1
- Fragments1
- Start simple1
- Split your UI into components with one true state1
- Recharts0
- Requires discipline to keep architecture organized36
- No predefined way to structure your app23
- Need to be familiar with lots of third party packages22
- JSX9
- Not enterprise friendly7
- One-way binding only5
- State consistency with backend neglected2
- Bad Documentation2
- Paradigms change too fast1
related React posts









I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.
I picked up an idea to develop and it was no brainer I had to go with React for the frontend. I was faced with challenges when it came to what component framework to use. I had worked extensively with Material-UI but I needed something different that would offer me wider range of well customized components (I became pretty slow at styling). I brought in Evergreen after several sampling and reads online but again, after several prototype development against Evergreen—since I was using TypeScript and I had to import custom Type, it felt exhaustive. After I validated Evergreen with the designs of the idea I was developing, I also noticed I might have to do a lot of styling. I later stumbled on Material Kit, the one specifically made for React . It was promising with beautifully crafted components, most of which fits into the designs pages I had on ground.
A major problem of Material Kit for me is it isn't written in TypeScript and there isn't any plans to support its TypeScript version. I rolled up my sleeve and started converting their components to TypeScript and if you'll ask me, I am still on it.
In summary, I used the Create React App with TypeScript support and I am spending some time converting Material Kit to TypeScript before I start developing against it. All of these components are going to be hosted on Bit.
If you feel I am crazy or I have gotten something wrong, I'll be willing to listen to your opinion. Also, if you want to have a share of whatever TypeScript version of Material Kit I end up coming up with, let me know.
Node.js
- Npm1.4K
- Javascript1.3K
- Great libraries1.1K
- High-performance1K
- Open source798
- Great for apis484
- Asynchronous474
- Great community420
- Great for realtime apps390
- Great for command line utilities295
- Node Modules81
- Websockets80
- Uber Simple67
- Great modularity58
- Allows us to reuse code in the frontend56
- Easy to start41
- Great for Data Streaming35
- Realtime31
- Awesome27
- Non blocking IO24
- Can be used as a proxy17
- High performance, open source, scalable16
- Non-blocking and modular15
- Easy and Fun14
- Easy and powerful13
- Future of BackEnd12
- Same lang as AngularJS12
- Fullstack11
- Fast10
- Cross platform9
- Scalability9
- Simple8
- Mean Stack7
- Great for webapps6
- Easy concurrency6
- Fast, simple code and async5
- Friendly5
- Typescript5
- React5
- Easy to use and fast and goes well with JSONdb's4
- Scalable4
- Great speed4
- Control everything4
- Fast development4
- Its amazingly fast and scalable4
- Isomorphic coolness3
- It's fast3
- Easy to use3
- Easy to learn2
- Easy2
- Javascript22
- Great community2
- Not Python2
- Sooper easy for the Backend connectivity2
- TypeScript Support2
- Scales, fast, simple, great community, npm, express2
- One language, end-to-end2
- Less boilerplate code2
- Blazing fast2
- Performant and fast prototyping2
- Lovely1
- Event Driven1
- Npm i ape-updating1
- Bound to a single CPU46
- New framework every day42
- Lots of terrible examples on the internet37
- Asynchronous programming is the worst29
- Callback23
- Javascript18
- Dependency based on GitHub11
- Dependency hell10
- Low computational power10
- Can block whole server easily7
- Very very Slow7
- Callback functions may not fire on expected sequence6
- Unneeded over complication3
- Unstable3
- Breaking updates3
- No standard approach1
- Bad transitive dependency management1
- Can't read server session1
related Node.js posts
When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?
So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.
React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.
Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.











How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
- Cross-browser1.3K
- Dom manipulation957
- Power806
- Open source660
- Plugins610
- Easy458
- Popular395
- Feature-rich350
- Html5281
- Light weight227
- Simple92
- Great community84
- CSS3 Compliant79
- Mobile friendly69
- Fast67
- Intuitive43
- Swiss Army knife for webdev42
- Huge Community35
- Easy to learn11
- Clean code4
- Because of Ajax request :)3
- Used everywhere2
- Just awesome2
- Powerful2
- Nice2
- Widely Used1
- Improves productivity1
- Open Source, Simple, Easy Setup1
- It Just Works1
- Industry acceptance1
- Allows great manipulation of HTML and CSS1
- Javascript1
- Easy Setup1
- Sometimes inconsistent API5
- Large size5
- Encourages DOM as primary data source5
- Live events is overly complex feature2
related jQuery posts
The client-side stack of Shopify Admin has been a long journey. It started with HTML templates, jQuery and Prototype. We moved to Batman.js, our in-house Single-Page-Application framework (SPA), in 2013. Then, we re-evaluated our approach and moved back to statically rendered HTML and vanilla JavaScript. As the front-end ecosystem matured, we felt that it was time to rethink our approach again. Last year, we started working on moving Shopify Admin to React and TypeScript.
Many things have changed since the days of jQuery and Batman. JavaScript execution is much faster. We can easily render our apps on the server to do less work on the client, and the resources and tooling for developers are substantially better with React than we ever had with Batman.
#FrameworksFullStack #Languages

























I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.
I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).
As per my work experience and knowledge, I have chosen the followings stacks to this mission.
UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.
Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.
Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.
Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.
Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.
Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.
Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.
Happy Coding! Suggestions are welcome! :)
Thanks, Ganesa
PHP
- Large community945
- Open source808
- Easy deployment762
- Great frameworks481
- The best glue on the web385
- Continual improvements234
- Good old web182
- Web foundation144
- Community packages134
- Tool support124
- Used by wordpress34
- Excellent documentation33
- Used by Facebook28
- Because of Symfony23
- Dynamic Language21
- Cheap hosting16
- Very powerful web language14
- Easy to learn14
- Fast development14
- Awesome Language and easy to implement14
- Composer12
- Because of Laravel10
- Flexibility, syntax, extensibility10
- Easiest deployment8
- Fastestest Time to Version 1.0 Deployments7
- Worst popularity quality ratio7
- Short development lead times7
- Readable Code7
- Most of the web uses it6
- Faster then ever6
- Fast6
- Simple, flexible yet Scalable5
- Open source and large community5
- I have no choice :(4
- Has the best ecommerce(Magento,Prestashop,Opencart,etc)4
- Is like one zip of air4
- Open source and great framework4
- Large community, easy setup, easy deployment, framework4
- Easy to use and learn4
- Cheap to own4
- Easy to learn, a big community, lot of frameworks4
- Great developer experience3
- Hard not to use2
- FFI2
- Interpreted at the run time2
- Great flexibility. From fast prototyping to large apps2
- Used by STOMT2
- Fault tolerance2
- Safe the planet2
- Walk away2
- So easy to learn, good practices are hard to find20
- Inconsistent API16
- Fragmented community8
- Not secure5
- No routing system2
- Hard to debug1
- Old1
related PHP posts
When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?
So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.
React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.
Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.
















Our whole Node.js backend stack consists of the following tools:
- Lerna as a tool for multi package and multi repository management
- npm as package manager
- NestJS as Node.js framework
- TypeScript as programming language
- ExpressJS as web server
- Swagger UI for visualizing and interacting with the API’s resources
- Postman as a tool for API development
- TypeORM as object relational mapping layer
- JSON Web Token for access token management
The main reason we have chosen Node.js over PHP is related to the following artifacts:
- Made for the web and widely in use: Node.js is a software platform for developing server-side network services. Well-known projects that rely on Node.js include the blogging software Ghost, the project management tool Trello and the operating system WebOS. Node.js requires the JavaScript runtime environment V8, which was specially developed by Google for the popular Chrome browser. This guarantees a very resource-saving architecture, which qualifies Node.js especially for the operation of a web server. Ryan Dahl, the developer of Node.js, released the first stable version on May 27, 2009. He developed Node.js out of dissatisfaction with the possibilities that JavaScript offered at the time. The basic functionality of Node.js has been mapped with JavaScript since the first version, which can be expanded with a large number of different modules. The current package managers (npm or Yarn) for Node.js know more than 1,000,000 of these modules.
- Fast server-side solutions: Node.js adopts the JavaScript "event-loop" to create non-blocking I/O applications that conveniently serve simultaneous events. With the standard available asynchronous processing within JavaScript/TypeScript, highly scalable, server-side solutions can be realized. The efficient use of the CPU and the RAM is maximized and more simultaneous requests can be processed than with conventional multi-thread servers.
- A language along the entire stack: Widely used frameworks such as React or AngularJS or Vue.js, which we prefer, are written in JavaScript/TypeScript. If Node.js is now used on the server side, you can use all the advantages of a uniform script language throughout the entire application development. The same language in the back- and frontend simplifies the maintenance of the application and also the coordination within the development team.
- Flexibility: Node.js sets very few strict dependencies, rules and guidelines and thus grants a high degree of flexibility in application development. There are no strict conventions so that the appropriate architecture, design structures, modules and features can be freely selected for the development.
related Angular CLI posts









I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.
Picked Angular 2 as framework since Angular CLI made it easy to get started on a self-contained frontend web project with TypeScript for easier development -- thanks to intellisense extensions for Visual Studio Code, hassle-free browser compatibility with the built-in Babel transpiler and packaging with the built-in Webpack configuration.
- Simple and easy to start with284
- Good documentation222
- Components189
- Simple the best125
- Simplified AngularJS95
- Reactive86
- Intuitive APIs71
- Javascript51
- Changed my front end coding life46
- Configuration is smooth44
- Easy to learn33
- So much fun to use31
- Progressive22
- Virtual dom18
- Faster than bulldogs on hot tarmac14
- It's magic9
- Component is template, javascript and style in one9
- Best of Both Worlds8
- Without misleading licenses7
- Perfomance7
- Application structure7
- Elegant design7
- Light Weight6
- Intuitive and easy to use6
- Easy to integrate to HTML by inline-templates4
- Good command line interface4
- Logicless templates4
- Like Angular only quicker to get started with3
- Small learning curve3
- Single file components3
- Customer Render ending eg to HTML3
- Intuitive2
- Lots of documentation2
- Component based2
- Vuex2
- Bridge from Web Development to JS Development2
- Concise error messages2
- Supports several template languages2
- High performance2
- One-way data flow2
- GUI1
- React0
- Less Common Place7
- YXMLvsHTML Markup3
- Don't support fragments1
- Only support programatically multiple root nodes1
related Vue.js posts
I've used both Vue.js and React and I would stick with React. I know that Vue.js seems easier to write and its much faster to pick up however as you mentioned above React has way more ready made components you can just plugin, and the community for React is very big.
It might be a bit more of a steep learning curve for your friend to learn React over Vue.js but I think in the long run its the better option.
I find using Vue.js to be easier (more concise / less boilerplate) and more intuitive than writing React. However, there are a lot more readily available React components that I can just plug into my projects. I'm debating whether to use Vue.js or React for an upcoming project that I'm going to use to help teach a friend how to build an interactive frontend. Which would you recommend I use?