Alternatives to React logo

Alternatives to React

Angular, Vue.js, Ember.js, NativeScript, and jQuery are the most popular alternatives and competitors to React.
169.1K
139.8K
+ 1
4.1K

What is React and what are its top alternatives?

React is a popular JavaScript library for building user interfaces, known for its component-based structure and virtual DOM rendering. It allows developers to create reusable UI components and efficiently update the user interface without re-rendering the entire page. However, React has a steep learning curve for beginners and may require additional tools and libraries for complex state management and routing.

  1. Vue.js: Vue.js is a progressive JavaScript framework for building UIs, offering easy integration into existing projects, efficient reactivity, and a simpler learning curve compared to React. Pros include a more flexible architecture and detailed documentation, but cons may include a smaller ecosystem and community compared to React.
  2. Angular: Angular is a comprehensive framework maintained by Google, providing features for building large-scale applications with a robust ecosystem, two-way data binding, and built-in tools for unit testing. Pros include a full-featured framework and better TypeScript integration, but cons may include a steeper learning curve and higher complexity compared to React.
  3. Svelte: Svelte is a new approach to building web applications, focusing on compiling code at build time to highly efficient vanilla JavaScript. Pros include a smaller bundle size and better performance compared to React, but cons may include a different component model and potentially less community support.
  4. Ember.js: Ember.js is a framework for ambitious web applications, providing tools for building scalable single-page applications with conventions over configuration and a strong emphasis on developer experience. Pros include a well-defined project structure and powerful CLI, but cons may include a steeper learning curve and less flexibility compared to React.
  5. Preact: Preact is a fast 3KB alternative to React with the same ES6 API, offering compatibility with React ecosystem libraries while focusing on performance optimizations and a smaller footprint. Pros include a lightweight library and fast rendering, but cons may include potential compatibility issues with certain React features.
  6. Stencil: Stencil is a tool for building web components with a strong focus on performance, providing a flexible way to create reusable elements that can be used across frameworks like React. Pros include cross-framework compatibility and native web APIs, but cons may include a more specialized use case compared to React.
  7. Inferno: Inferno is a fast, lightweight alternative to React with a focus on speed and performance optimizations like partial DOM rendering. Pros include high performance and compatibility with React's API, but cons may include a smaller community and potentially shorter long-term support compared to React.
  8. SolidJS: SolidJS is a declarative JavaScript library for building user interfaces, focusing on fast updates and efficient rendering through a reactive and fine-grained dependency tracking system. Pros include high performance and minimal re-renders, but cons may include a smaller ecosystem and potentially lower adoption rate compared to React.
  9. Mithril: Mithril is a modern client-side JavaScript framework for building single-page applications, offering a simple API, small footprint, and fast virtual DOM diffing algorithm. Pros include a lightweight library and good performance, but cons may include less tooling and a smaller community compared to React.
  10. Riot.js: Riot.js is a simple and elegant component-based library for building web applications, providing a small footprint, easy syntax, and built-in support for state management and routing. Pros include a minimalistic approach and easy learning curve, but cons may include a smaller ecosystem and fewer features compared to React.

Top Alternatives to React

  • Angular
    Angular

    It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications. ...

  • Vue.js
    Vue.js

    It is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API. ...

  • Ember.js
    Ember.js

    A JavaScript framework that does all of the heavy lifting that you'd normally have to do by hand. There are tasks that are common to every web app; It does those things for you, so you can focus on building killer features and UI. ...

  • NativeScript
    NativeScript

    NativeScript enables developers to build native apps for iOS, Android and Windows Universal while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms. ...

  • jQuery
    jQuery

    jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML. ...

  • Xamarin
    Xamarin

    Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch. ...

  • Preact
    Preact

    Preact is an attempt to recreate the core value proposition of React (or similar libraries like Mithril) using as little code as possible, with first-class support for ES2015. Currently the library is around 3kb (minified & gzipped). ...

  • Bootstrap
    Bootstrap

    Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web. ...

React alternatives & related posts

Angular logo

Angular

1.7K
4.7K
499
A platform for building mobile and desktop web applications
1.7K
4.7K
+ 1
499
PROS OF ANGULAR
  • 109
    It's a powerful framework
  • 53
    Straight-forward architecture
  • 48
    TypeScript
  • 45
    Great UI and Business Logic separation
  • 40
    Powerful, maintainable, fast
  • 39
    Amazing CLI
  • 33
    Great mvc
  • 29
    Powerfull Dependency Injection
  • 19
    Easy to build
  • 16
    All in one Framework
  • 15
    Opinionated, batteries-included approach
  • 11
    Schematics
  • 10
    Solid Standard Setup.
  • 8
    Structured
  • 7
    Performance
  • 5
    Complex
  • 4
    Only for single page applications
  • 3
    Builders
  • 2
    RxJS
  • 2
    Ng upgrade
  • 1
    React
CONS OF ANGULAR
  • 9
    Overcomplicated
  • 9
    Large overhead in file size and initialization time
  • 2
    Ugly code
  • 2
    CLI not open to other test and linting tools

related Angular posts

Eyas Sharaiha
Software Engineer at Google · | 28 upvotes · 1.1M views
Shared insights
on
TypeScriptTypeScriptAngularAngularRxJSRxJS
at

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
Praveen Mooli
Engineering Manager at Taylor and Francis · | 18 upvotes · 3.8M 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
Vue.js logo

Vue.js

53.4K
43.4K
1.6K
A progressive framework for building user interfaces
53.4K
43.4K
+ 1
1.6K
PROS OF VUE.JS
  • 293
    Simple and easy to start with
  • 229
    Good documentation
  • 196
    Components
  • 131
    Simple the best
  • 100
    Simplified AngularJS
  • 94
    Reactive
  • 77
    Intuitive APIs
  • 56
    Javascript
  • 52
    Changed my front end coding life
  • 48
    Configuration is smooth
  • 37
    Easy to learn
  • 35
    So much fun to use
  • 25
    Progressive
  • 22
    Virtual dom
  • 16
    Faster than bulldogs on hot tarmac
  • 12
    Component is template, javascript and style in one
  • 12
    It's magic
  • 10
    Perfomance
  • 10
    Light Weight
  • 9
    Best of Both Worlds
  • 8
    Intuitive and easy to use
  • 8
    Elegant design
  • 8
    Application structure
  • 8
    Without misleading licenses
  • 6
    Small learning curve
  • 6
    Good command line interface
  • 5
    Logicless templates
  • 5
    Like Angular only quicker to get started with
  • 5
    Single file components
  • 5
    Easy to integrate to HTML by inline-templates
  • 4
    High performance
  • 3
    Vuex
  • 3
    Component based
  • 3
    Customer Render ending eg to HTML
  • 3
    Bridge from Web Development to JS Development
  • 2
    Concise error messages
  • 2
    Supports several template languages
  • 2
    One-way data flow
  • 2
    Lots of documentation
  • 2
    Intuitive
  • 1
    GUI
CONS OF VUE.JS
  • 9
    Less Common Place
  • 5
    YXMLvsHTML Markup
  • 3
    Don't support fragments
  • 3
    Only support programatically multiple root nodes

related Vue.js posts

Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 27 upvotes · 4.8M views

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.
See more
Johnny Bell
Shared insights
on
Vue.jsVue.jsReactReact

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.

See more
Ember.js logo

Ember.js

1.5K
865
775
A JavaScript framework for creating ambitious web apps
1.5K
865
+ 1
775
PROS OF EMBER.JS
  • 126
    Elegant
  • 97
    Quick to develop
  • 83
    Great mvc
  • 82
    Great community
  • 73
    Great router
  • 52
    Values conventions, there is one-true way to organize
  • 50
    Open source
  • 44
    Components
  • 34
    Mvc framework
  • 28
    Handlebars.js
  • 13
    Htmlbars
  • 11
    Yehuda katz
  • 10
    Tom dale
  • 10
    Great logo
  • 6
    It's NOT Google or Facebook
  • 5
    manages large data sets on the front end easily
  • 5
    Convention over Configuration
  • 5
    Glimmer: react-like rendering engine
  • 4
    Organized
  • 4
    Fast
  • 4
    Enterprise
  • 4
    Intelligent
  • 4
    It rocks
  • 3
    Good docs
  • 3
    Fastest spinning circles
  • 3
    IE8 support
  • 2
    Easy and Quick to develop
  • 2
    Documentation is finally active and updated
  • 1
    Flexibility
  • 1
    Business wins
  • 1
    Comprehensive
  • 1
    Great for big apps/many devs because its organized
  • 1
    Growing community
  • 1
    For building ambitious Web apps
  • 1
    Dependency Injection
  • 1
    Stability without stagnation
CONS OF EMBER.JS
  • 2
    Very little flexibility
  • 2
    Too much convention, too little configuration
  • 1
    Hard to integrate with Non Ruby apps
  • 1
    Hard to use if your API isn't RESTful

related Ember.js posts

Dmitry Mukhin
Engineer at Uploadcare · | 25 upvotes · 2.4M views

Simple controls over complex technologies, as we put it, wouldn't be possible without neat UIs for our user areas including start page, dashboard, settings, and docs.

Initially, there was Django. Back in 2011, considering our Python-centric approach, that was the best choice. Later, we realized we needed to iterate on our website more quickly. And this led us to detaching Django from our front end. That was when we decided to build an SPA.

For building user interfaces, we're currently using React as it provided the fastest rendering back when we were building our toolkit. It’s worth mentioning Uploadcare is not a front-end-focused SPA: we aren’t running at high levels of complexity. If it were, we’d go with Ember.js.

However, there's a chance we will shift to the faster Preact, with its motto of using as little code as possible, and because it makes more use of browser APIs. One of our future tasks for our front end is to configure our Webpack bundler to split up the code for different site sections. For styles, we use PostCSS along with its plugins such as cssnano which minifies all the code.

All that allows us to provide a great user experience and quickly implement changes where they are needed with as little code as possible.

See more
Josh Dzielak
Co-Founder & CTO at Orbit · | 19 upvotes · 429.1K views

Shortly after I joined Algolia as a developer advocate, I knew I wanted to establish a place for the community to congregate and share their projects, questions and advice. There are a ton of platforms out there that can be used to host communities, and they tend to fall into two categories - real-time sync (like chat) and async (like forums). Because the community was already large, I felt that a chat platform like Discord or Gitter might be overwhelming and opted for a forum-like solution instead (which would also create content that's searchable from Google).

I looked at paid, closed-source options like AnswerHub and ForumBee and old-school solutions like phpBB and vBulletin, but none seemed to offer the power, flexibility and developer-friendliness of Discourse. Discourse is open source, written in Rails with Ember.js on the front-end. That made me confident I could modify it to meet our exact needs. Discourse's own forum is very active which made me confident I could get help if I needed it.

It took about a month to get Discourse up-and-running and make authentication tied to algolia.com via the SSO plugin. Adding additional plugins for moderation or look-and-feel customization was fairly straightforward, and I even created a plugin to make the forum content searchable with Algolia. To stay on top of answering questions and moderation, we used the Discourse API to publish new messages into our Slack. All-in-all I would say we were happy with Discourse - the only caveat would be that it's very helpful to have technical knowledge as well as Rails knowledge in order to get the most out of it.

See more
NativeScript logo

NativeScript

538
1.1K
516
Build truly native apps with JavaScript
538
1.1K
+ 1
516
PROS OF NATIVESCRIPT
  • 75
    Access to the entire native api
  • 47
    Support for native ios and android libraries
  • 46
    Support for javascript libraries
  • 46
    Angular 2.0 support
  • 44
    Native ux and performance
  • 37
    Typescript support
  • 35
    Backed up by google and telerik
  • 29
    Css support
  • 27
    Cross-platform declarative ui and code
  • 25
    Fully open source under apache 2.0 license
  • 11
    Vuejs support
  • 9
    60fps performance
  • 6
    Powerful data visualization with native UI
  • 5
    VS Code integration
  • 5
    Angular, typescript and javascript support
  • 5
    No need for Mac to build iOS apps in Telerik Platform
  • 4
    Extended CLI support
  • 4
    Cloud builds as part of Telerik PLatform
  • 4
    Truly Object-Oriented with Typescript
  • 4
    On-device debugging
  • 4
    Extensibility
  • 3
    Access to entire native api
  • 3
    Live reload
  • 3
    Easiest of all other frameworks
  • 3
    Easy to learn
  • 3
    Backed by google
  • 3
    0 day support for new OS updates
  • 3
    Publishing modules to NPM
  • 2
    Vue.js support out of the box
  • 2
    VueJS support
  • 2
    Svelte support
  • 2
    Powerfull mobile services as part of Telerik Platform
  • 2
    Native ui with angular
  • 2
    Vue support
  • 1
    Playground
  • 1
    Hot Reload
  • 1
    HMR via webpack
  • 1
    Very small app size
  • 1
    Write once, use anywhere
  • 1
    Easy to use, support for almost all npm packages
  • 1
    Rich ecosystem
  • 1
    Compile to Apple/Google Stores via CloudCompiler
  • 1
    Has CSS ;-)
  • 1
    It works with Angular
  • 1
    Code reuse with your website
  • 0
    Dart
CONS OF NATIVESCRIPT
  • 5
    Lack of promotion
  • 1
    Slower Performance compared to competitors

related NativeScript posts

Hello,

We're just brainstorming for the moment and we have a few questions.

We have an idea for an app that we want to develop, here are the prerequisites:

1) cross-platform (iOS, Android, and website);

2) as easy to maintain as possible / well documented / widely used;

3) Visual Studio Code and Copilot compatible;

4) Text to speech;

5) Speech recognition;

6) Running in background (screen off with TTS and speech recognition);

7) could be using TypeScript;

8) Monetized through ad and in-App payment for premium version;

9) Display on lock screen (Android only I guess)

So what would you recommend?

I've been trying to review the options available, and I've considered:

  • NativeScript

  • React Native

  • Flutter

  • Any other?

Thanks in advance for your help, and I'm open to any comments.

See more
leonardo silveira
Software Engineer at Jobsity · | 5 upvotes · 560.6K views

So, i am preparing to adopt NativeScript.

For years my hybrid projects used Apache Cordova.

"Let's avoid to maintain two teams and double the deliver velocity".

It was good for a few years, we had those september issues, (i.e. apple broke some backward compatibility) , but for the last years, things seems to be losing the grip faster.

Last breaking changes, for instance, seems to have a workaround, however that growing feeling that simple things can not rely on so fragile webviews keeps growing faster and faster.

I've tested nativescript not only on it's "helloworld", but also on how do they respond on issues.

I got tweed support. I opened an github issue and got answers on less than 10 hours (yes i did it on another timezone and very close to a weekend). I saw the faulty docs get corrected in two days.

The bad news is i only can adopt nativescript on newer projects, since there is no budget to revamp the current solutions.

The good news is i can keep coding on Vue.js , without vou router, but that's ok. I've already exchanged vanilla html for real native app with background magic enabled, the router can be easily reproduced.

See more
jQuery logo

jQuery

190.3K
66.9K
6.6K
The Write Less, Do More, JavaScript Library.
190.3K
66.9K
+ 1
6.6K
PROS OF JQUERY
  • 1.3K
    Cross-browser
  • 957
    Dom manipulation
  • 809
    Power
  • 660
    Open source
  • 610
    Plugins
  • 459
    Easy
  • 395
    Popular
  • 350
    Feature-rich
  • 281
    Html5
  • 227
    Light weight
  • 93
    Simple
  • 84
    Great community
  • 79
    CSS3 Compliant
  • 69
    Mobile friendly
  • 67
    Fast
  • 43
    Intuitive
  • 42
    Swiss Army knife for webdev
  • 35
    Huge Community
  • 11
    Easy to learn
  • 4
    Clean code
  • 3
    Because of Ajax request :)
  • 2
    Powerful
  • 2
    Nice
  • 2
    Just awesome
  • 2
    Used everywhere
  • 1
    Improves productivity
  • 1
    Javascript
  • 1
    Easy Setup
  • 1
    Open Source, Simple, Easy Setup
  • 1
    It Just Works
  • 1
    Industry acceptance
  • 1
    Allows great manipulation of HTML and CSS
  • 1
    Widely Used
  • 1
    I love jQuery
CONS OF JQUERY
  • 6
    Large size
  • 5
    Sometimes inconsistent API
  • 5
    Encourages DOM as primary data source
  • 2
    Live events is overly complex feature

related jQuery posts

Kir Shatrov
Engineering Lead at Shopify · | 22 upvotes · 1.9M views

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

See more
Ganesa Vijayakumar
Full Stack Coder | Technical Lead · | 19 upvotes · 4.7M views

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

See more
Xamarin logo

Xamarin

1.3K
1.5K
785
Create iOS, Android and Mac apps in C#
1.3K
1.5K
+ 1
785
PROS OF XAMARIN
  • 121
    Power of c# on mobile devices
  • 81
    Native performance
  • 79
    Native apps with native ui controls
  • 73
    No javascript - truely compiled code
  • 67
    Sharing more than 90% of code over all platforms
  • 45
    Ability to leverage visual studio
  • 44
    Mvvm pattern
  • 44
    Many great c# libraries
  • 36
    Amazing support
  • 34
    Powerful platform for .net developers
  • 19
    GUI Native look and Feel
  • 16
    Nuget package manager
  • 12
    Free
  • 9
    Backed by Microsoft
  • 9
    Enables code reuse on server
  • 8
    Faster Development
  • 7
    Use of third-party .NET libraries
  • 7
    It's free since Apr 2016
  • 7
    Best performance than other cross-platform
  • 7
    Easy Debug and Trace
  • 7
    Open Source
  • 6
    Mac IDE (Xamarin Studio)
  • 6
    Xamarin.forms is the best, it's amazing
  • 5
    That just work for every scenario
  • 5
    C# mult paradigm language
  • 5
    Power of C#, no javascript, visual studio
  • 4
    Great docs
  • 4
    Compatible to develop Hybrid apps
  • 4
    Microsoft stack
  • 4
    Microsoft backed
  • 3
    Well Designed
  • 3
    Small learning curve for Mobile developers
  • 2
    Ionic
  • 2
    Ability to leverage legacy C and C++
CONS OF XAMARIN
  • 9
    Build times
  • 5
    Visual Studio
  • 4
    Price
  • 3
    Complexity
  • 3
    Scalability
  • 2
    Nuget
  • 2
    Maturity
  • 2
    Build Tools
  • 2
    Support
  • 0
    Maturidade
  • 0
    Performance

related Xamarin posts

Greg Neumann
Indie, Solo, Developer · | 8 upvotes · 1.5M views

Finding the most effective dev stack for a solo developer. Over the past year, I've been looking at many tech stacks that would be 'best' for me, as a solo, indie, developer to deliver a desktop app (Windows & Mac) plus mobile - iOS mainly. Initially, Xamarin started to stand-out. Using .NET Core as the run-time, Xamarin as the native API provider and Xamarin Forms for the UI seemed to solve all issues. But, the cracks soon started to appear. Xamarin Forms is mobile only; the Windows incarnation is different. There is no Mac UI solution (you have to code it natively in Mac OS Storyboard. I was also worried how Xamarin Forms , if I was to use it, was going to cope, in future, with Apple's new SwiftUI and Google's new Fuchsia.

This plethora of techs for the UI-layer made me reach for the safer waters of using Web-techs for the UI. Lovely! Consistency everywhere (well, mostly). But that consistency evaporates when platform issues are addressed. There are so many web frameworks!

But, I made a simple decision. It's just me...I am clever, but there is no army of coders here. And I have big plans for a business app. How could just 1 developer go-on to deploy a decent app to Windows, iPhone, iPad & Mac OS? I remembered earlier days when I've used Microsoft's ASP.NET to scaffold - generate - loads of Code for a web-app that I needed for several charities that I worked with. What 'generators' exist that do a lot of the platform-specific rubbish, allow the necessary customisation of such platform integration and provide a decent UI?

I've placed my colours to the Quasar Framework mast. Oh dear, that means Electron desktop apps doesn't it? Well, Ive had enough of loads of Developers saying that "the menus won't look native" or "it uses too much RAM" and so on. I've been using non-native UI-wrapped apps for ages - the date picker in Outlook on iOS is way better than the native date-picker and I'd been using it for years without getting hot under the collar about it. Developers do get so hung-up on things that busy Users hardly notice; don't you think?. As to the RAM usage issue; that's a bit true. But Users only really notice when an app uses so much RAM that the machine starts to page-out. Electron contributes towards that horizon but does not cause it. My Users will be business-users after all. Somewhat decent machines.

Looking forward to all that lovely Vue.js around my TypeScript and all those really, really, b e a u t I f u l UI controls of Quasar Framework . Still not sure that 1 dev can deliver all that... but I'm up for trying...

See more
Bhupendra Madhu
Web Developer at Ecombooks · | 8 upvotes · 522.6K views

I want to learn cross-platform application frameworks like React Native, Flutter, Xamarin, or Ionic, and I'm a web developer. I can learn other programming languages as well. But I'm confused about what to learn, which framework is best, and which framework will last long as the application grows further into complexity.

See more
Preact logo

Preact

407
286
28
Fast 3kb alternative to React with the same ES6 API
407
286
+ 1
28
PROS OF PREACT
  • 15
    Lightweight
  • 5
    Drop-in replacement for React
  • 4
    Performance
  • 3
    Props/state passed to render
  • 1
    ES6 class components
CONS OF PREACT
    Be the first to leave a con

    related Preact posts

    Dmitry Mukhin
    Engineer at Uploadcare · | 25 upvotes · 2.4M views

    Simple controls over complex technologies, as we put it, wouldn't be possible without neat UIs for our user areas including start page, dashboard, settings, and docs.

    Initially, there was Django. Back in 2011, considering our Python-centric approach, that was the best choice. Later, we realized we needed to iterate on our website more quickly. And this led us to detaching Django from our front end. That was when we decided to build an SPA.

    For building user interfaces, we're currently using React as it provided the fastest rendering back when we were building our toolkit. It’s worth mentioning Uploadcare is not a front-end-focused SPA: we aren’t running at high levels of complexity. If it were, we’d go with Ember.js.

    However, there's a chance we will shift to the faster Preact, with its motto of using as little code as possible, and because it makes more use of browser APIs. One of our future tasks for our front end is to configure our Webpack bundler to split up the code for different site sections. For styles, we use PostCSS along with its plugins such as cssnano which minifies all the code.

    All that allows us to provide a great user experience and quickly implement changes where they are needed with as little code as possible.

    See more
    Riderman De Sousa Barbosa
    Shared insights
    on
    PreactPreactReactReact
    at

    The first and most important premise is that should be fast.. really fast. This premise was basically because this is an PWA project, and the main goal of this project are be more efficient on restaurant.

    So I ended up choosing Preact instead React .

    This made the app (PWA) more faster, not only when navigating but improve TTI and data usage.

    See more
    Bootstrap logo

    Bootstrap

    55.3K
    13.1K
    7.7K
    Simple and flexible HTML, CSS, and JS for popular UI components and interactions
    55.3K
    13.1K
    + 1
    7.7K
    PROS OF BOOTSTRAP
    • 1.6K
      Responsiveness
    • 1.2K
      UI components
    • 943
      Consistent
    • 779
      Great docs
    • 677
      Flexible
    • 472
      HTML, CSS, and JS framework
    • 411
      Open source
    • 375
      Widely used
    • 368
      Customizable
    • 242
      HTML framework
    • 77
      Mobile first
    • 77
      Popular
    • 77
      Easy setup
    • 57
      Great grid system
    • 52
      Great community
    • 38
      Future compatibility
    • 34
      Integration
    • 28
      Very powerful foundational front-end framework
    • 24
      Standard
    • 23
      Javascript plugins
    • 19
      Build faster prototypes
    • 18
      Preprocessors
    • 14
      Grids
    • 9
      Good for a person who hates CSS
    • 8
      Clean
    • 4
      Easy to setup and learn
    • 4
      Rapid development
    • 4
      Love it
    • 3
      Great and easy to use
    • 2
      Easy to use
    • 2
      Devin schumacher rules
    • 2
      Boostrap
    • 2
      Community
    • 2
      Provide angular wrapper
    • 2
      Great and easy
    • 2
      Powerful grid system, Rapid development, Customization
    • 2
      Great customer support
    • 2
      Popularity
    • 2
      Clean and quick frontend development
    • 2
      Great and easy to make a responsive website
    • 2
      Sprzedam opla
    • 1
      Painless front end development
    • 1
      Love the classes?
    • 1
      Responsive design
    • 1
      Poop
    • 1
      So clean and simple
    • 1
      Design Agnostic
    • 1
      Numerous components
    • 1
      Material-ui
    • 1
      Recognizable
    • 1
      Intuitive
    • 1
      Vue
    • 1
      Felxible, comfortable, user-friendly
    • 1
      Pre-Defined components
    • 1
      It's fast
    • 1
      Geo
    • 1
      Not tied to jQuery
    • 1
      The fame
    • 1
      Easy setup2
    CONS OF BOOTSTRAP
    • 26
      Javascript is tied to jquery
    • 16
      Every site uses the defaults
    • 15
      Grid system break points aren't ideal
    • 14
      Too much heavy decoration in default look
    • 8
      Verbose styles
    • 1
      Super heavy

    related Bootstrap posts

    Ganesa Vijayakumar
    Full Stack Coder | Technical Lead · | 19 upvotes · 4.7M views

    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

    See more
    Francisco Quintero
    Tech Lead at Dev As Pros · | 13 upvotes · 1.6M views

    For Etom, a side project. We wanted to test an idea for a future and bigger project.

    What Etom does is searching places. Right now, it leverages the Google Maps API. For that, we found a React component that makes this integration easy because using Google Maps API is not possible via normal API requests.

    You kind of need a map to work as a proxy between the software and Google Maps API.

    We hate configuration(coming from Rails world) so also decided to use Create React App because setting up a React app, with all the toys, it's a hard job.

    Thanks to all the people behind Create React App it's easier to start any React application.

    We also chose a module called Reactstrap which is Bootstrap UI in React components.

    An important thing in this side project(and in the bigger project plan) is to measure visitor through out the app. For that we researched and found that Keen was a good choice(very good free tier limits) and also it is very simple to setup and real simple to send data to

    Slack and Trello are our defaults tools to comunicate ideas and discuss topics, so, no brainer using them as well for this project.

    See more