Alternatives to SwiftUI logo

Alternatives to SwiftUI

React, Swift, Cocoa (OS X), UIkIt, and React Native are the most popular alternatives and competitors to SwiftUI.
203
218
+ 1
4

What is SwiftUI and what are its top alternatives?

Provides views, controls, and layout structures for declaring your app's user interface. The framework provides event handlers for delivering taps, gestures, and other types of input to your app.
SwiftUI is a tool in the Mobile UI Frameworks category of a tech stack.

Top Alternatives to SwiftUI

  • React

    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. ...

  • Swift

    Swift

    Writing code is interactive and fun, the syntax is concise yet expressive, and apps run lightning-fast. Swift is ready for your next iOS and OS X project — or for addition into your current app — because Swift code works side-by-side with Objective-C. ...

  • Cocoa (OS X)

    Cocoa (OS X)

    Much of Cocoa is implemented in Objective-C, an object-oriented language that is compiled to run at incredible speed, yet employs a truly dynamic runtime making it uniquely flexible. Because Objective-C is a superset of C, it is easy to mix C and even C++ into your Cocoa applications. ...

  • UIkIt

    UIkIt

    UIkit gives you a comprehensive collection of HTML, CSS, and JS components which is simple to use, easy to customize and extendable. ...

  • React Native

    React Native

    React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native. ...

  • Flutter

    Flutter

    Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. ...

  • jQuery Mobile

    jQuery Mobile

    jQuery Mobile is a HTML5-based user interface system designed to make responsive web sites and apps that are accessible on all smartphone, tablet and desktop devices. ...

  • CoreRender

    CoreRender

    React-inspired Swift library for writing UIKit UIs.

SwiftUI alternatives & related posts

React logo

React

98.4K
77.5K
3.8K
A JavaScript library for building user interfaces
98.4K
77.5K
+ 1
3.8K
PROS OF REACT
  • 751
    Components
  • 651
    Virtual dom
  • 558
    Performance
  • 484
    Simplicity
  • 436
    Composable
  • 174
    Data flow
  • 159
    Declarative
  • 123
    Isn't an mvc framework
  • 113
    Reactive updates
  • 110
    Explicit app state
  • 31
    JSX
  • 23
    Learn once, write everywhere
  • 18
    Uni-directional data flow
  • 16
    Easy to Use
  • 14
    Works great with Flux Architecture
  • 10
    Great perfomance
  • 8
    Built by Facebook
  • 6
    Javascript
  • 5
    TypeScript support
  • 5
    Speed
  • 4
    Awesome
  • 4
    Easy to start
  • 4
    Feels like the 90s
  • 4
    Scalable
  • 3
    Functional
  • 3
    Server side views
  • 3
    Hooks
  • 3
    Fancy third party tools
  • 2
    Props
  • 2
    Simple
  • 2
    Has functional components
  • 2
    Great migration pathway for older systems
  • 2
    SSR
  • 2
    Fast evolving
  • 2
    Simple, easy to reason about and makes you productive
  • 2
    Very gentle learning curve
  • 2
    Excellent Documentation
  • 2
    Rich ecosystem
  • 2
    Super easy
  • 2
    Has arrow functions
  • 2
    Strong Community
  • 2
    Closer to standard JavaScript and HTML than others
  • 2
    Scales super well
  • 2
    Just the View of MVC
  • 2
    Server Side Rendering
  • 2
    Cross-platform
  • 1
    Sharable
  • 1
    Start simple
  • 1
    Obama
  • 1
    Every decision architecture wise makes sense
  • 1
    Permissively-licensed
  • 1
    Beautiful and Neat Component Management
  • 1
    Fragments
  • 1
    Sdfsdfsdf
  • 1
    Allows creating single page applications
  • 1
    Split your UI into components with one true state
CONS OF REACT
  • 32
    Requires discipline to keep architecture organized
  • 20
    No predefined way to structure your app
  • 19
    Need to be familiar with lots of third party packages
  • 6
    JSX
  • 6
    Not enterprise friendly
  • 1
    One-way binding only
  • 1
    State consistency with backend neglected

related React posts

Vaibhav Taunk
Team Lead at Technovert · | 31 upvotes · 1.5M views

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.

See more
Johnny Bell
Software Engineer at Weedmaps · | 26 upvotes · 382.5K views
Shared insights
on
Vue.js
React

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
Swift logo

Swift

12.2K
8.6K
1.2K
An innovative new programming language for Cocoa and Cocoa Touch.
12.2K
8.6K
+ 1
1.2K
PROS OF SWIFT
  • 251
    Ios
  • 176
    Elegant
  • 124
    Not Objective-C
  • 105
    Backed by apple
  • 91
    Type inference
  • 60
    Generics
  • 54
    Playgrounds
  • 49
    Semicolon free
  • 39
    OSX
  • 35
    Tuples offer compound variables
  • 23
    Clean Syntax
  • 23
    Easy to learn
  • 21
    Open Source
  • 20
    Functional
  • 19
    Beautiful Code
  • 11
    Linux
  • 11
    Dynamic
  • 10
    Promotes safe, readable code
  • 9
    Protocol-oriented programming
  • 8
    No S-l-o-w JVM
  • 8
    Explicit optionals
  • 6
    Storyboard designer
  • 5
    Best UI concept
  • 5
    Type safety
  • 5
    Super addicting language, great people, open, elegant
  • 5
    Optionals
  • 4
    Powerful
  • 4
    Fail-safe
  • 4
    Highly Readable codes
  • 4
    Faster and looks better
  • 4
    Swift is faster than Objective-C
  • 4
    Feels like a better C++
  • 4
    Its friendly
  • 3
    Strong Type safety
  • 3
    Easy to learn and work
  • 3
    Much more fun
  • 3
    Protocol extensions
  • 3
    Native
  • 3
    Its fun and damn fast
  • 3
    Easy to Maintain
  • 2
    Esay
  • 2
    MacOS
  • 2
    Type Safe
  • 2
    All Cons C# and Java Swift Already has
  • 2
    Protocol oriented programming
  • 2
    Protocol as type
  • 1
    Actually don't have to own a mac
  • 1
    Can interface with C easily
  • 1
    Numbers with underbar
  • 1
    Optional chain
  • 1
    Runs Python 8 times faster
  • 1
    Free from Memory Leak
  • 1
    Swift is easier to understand for non-iOS developers.
  • 1
    Great for Multi-Threaded Programming
  • 1
    Objec
CONS OF SWIFT
  • 4
    Must own a mac
  • 2
    Memory leaks are not uncommon
  • 1
    Its classes compile to roughly 300 lines of assembly
  • 1
    Complicated process for exporting modules
  • 1
    Very irritatingly picky about things that’s
  • 1
    Is a lot more effort than lua to make simple functions
  • 0
    Overly complex options makes it easy to create bad code

related Swift posts

Shivam Bhargava
AVP - Business at VAYUZ Technologies Pvt. Ltd. · | 22 upvotes · 192.5K views

Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?

What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!

See more
Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 12 upvotes · 1M views

Excerpts from how we developed (and subsequently open sourced) Uber's cross-platform mobile architecture framework, RIBs , going from Objective-C to Swift in the process for iOS: https://github.com/uber/RIBs

Uber’s new application architecture (RIBs) extensively uses protocols to keep its various components decoupled and testable. We used this architecture for the first time in our new rider application and moved our primary language from Objective-C to Swift. Since Swift is a very static language, unit testing became problematic. Dynamic languages have good frameworks to build test mocks, stubs, or stand-ins by dynamically creating or modifying existing concrete classes.

Needless to say, we were not very excited about the additional complexity of manually writing and maintaining mock implementations for each of our thousands of protocols.

The information required to generate mock classes already exists in the Swift protocol. For Uber’s use case, we set out to create tooling that would let engineers automatically generate test mocks for any protocol they wanted by simply annotating them.

The iOS codebase for our rider application alone incorporates around 1,500 of these generated mocks. Without our code generation tool, all of these would have to be written and maintained by hand, which would have made testing much more time-intensive. Auto-generated mocks have contributed a lot to the unit test coverage that we have today.

We built these code generation tools ourselves for a number of reasons, including that there weren’t many open source tools available at the time we started our effort. Today, there are some great open source tools to generate resource accessors, like SwiftGen. And Sourcery can help you with generic code generation needs:

https://eng.uber.com/code-generation/ https://eng.uber.com/driver-app-ribs-architecture/

(GitHub : https://github.com/uber/RIBs )

See more
Cocoa (OS X) logo

Cocoa (OS X)

34
42
6
The Cocoa frameworks consist of libraries, APIs, and runtimes that form the development layer for all of OS...
34
42
+ 1
6
PROS OF COCOA (OS X)
  • 3
    Great community
  • 2
    IOS
  • 1
    Backed by apple
CONS OF COCOA (OS X)
    Be the first to leave a con

    related Cocoa (OS X) posts

    UIkIt logo

    UIkIt

    718
    311
    260
    A lightweight and modular front-end framework for developing fast and powerful web interfaces
    718
    311
    + 1
    260
    PROS OF UIKIT
    • 37
      Complete GUI
    • 29
      Easy modify
    • 27
      Practical
    • 24
      Easy to learn
    • 24
      Functional
    • 22
      Intuitive
    • 21
      Free
    • 16
      Simple
    • 15
      Lightweight
    • 15
      Easy to use
    • 5
      Modern look
    • 5
      Because I can create amazing things with little effort
    • 5
      Modular
    • 4
      Responsiveness
    • 3
      Small but Active Community
    • 2
      Responsive grid
    • 2
      No requires jquery
    • 2
      Convenient JS Components
    • 2
      Based on Flexbox
    CONS OF UIKIT
      Be the first to leave a con

      related UIkIt posts

      Daniel Hernández Alcojor
      Frontend Developer at atSistemas · | 8 upvotes · 306.5K views

      I'm building, from scratch, a webapp. It's going to be a dashboard to check on our apps in New Relic and update the Apdex from the webapp. I have just chosen Next.js as our framework because we use React already, and after going through the tutorial, I just loved the latest changes they have implemented.

      But we have to decide on a CSS framework for the UI. I'm partial to Bulma because I love that it's all about CSS (and you can use SCSS from the start), that it's rather lightweight and that it doesn't come with JavaScript clutter. One of the things I hate about Bootstrap is that you depend on jQuery to use the JavaScript part. My boss loves UIkIt, but when I've used it in the past, I didn't like it.

      What do you think we should use? Maybe you have another suggestion?

      See more
      React Native logo

      React Native

      20.5K
      17.5K
      1.1K
      A framework for building native apps with React
      20.5K
      17.5K
      + 1
      1.1K
      PROS OF REACT NATIVE
      • 199
        Learn once write everywhere
      • 160
        Cross platform
      • 158
        Javascript
      • 115
        Native ios components
      • 66
        Built by facebook
      • 60
        Easy to learn
      • 43
        Bridges me into ios development
      • 39
        It's just react
      • 39
        No compile
      • 36
        Declarative
      • 20
        Fast
      • 12
        Virtual Dom
      • 12
        Livereload
      • 10
        Insanely fast develop / test cycle
      • 9
        Easy setup
      • 9
        Great community
      • 9
        Backed by Facebook
      • 9
        It is free and open source
      • 8
        Native android components
      • 7
        Highly customizable
      • 6
        Great errors
      • 6
        Scalable
      • 6
        Awesome
      • 6
        Win win solution of hybrid app
      • 6
        Everything component
      • 5
        Simple
      • 5
        Not dependent on anything such as Angular
      • 4
        OTA update
      • 4
        Awesome, easy starting from scratch
      • 3
        As good as Native without any performance concerns
      • 3
        Easy to use
      • 2
        Web development meets Mobile development
      • 2
        Can be incrementally added to existing native apps
      • 2
        Many salary
      • 2
        Hot reload
      • 2
        Over the air update (Flutter lacks)
      • 2
        'It's just react'
      • 1
        Ngon
      • 0
        Ful
      • 0
        Nigger
      CONS OF REACT NATIVE
      • 22
        Javascript
      • 17
        Built by facebook
      • 11
        Cant use CSS
      • 2
        Some compenents not truly native

      related React Native posts

      Vaibhav Taunk
      Team Lead at Technovert · | 31 upvotes · 1.5M views

      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.

      See more

      I'm working as one of the engineering leads in RunaHR. As our platform is a Saas, we thought It'd be good to have an API (We chose Ruby and Rails for this) and a SPA (built with React and Redux ) connected. We started the SPA with Create React App since It's pretty easy to start.

      We use Jest as the testing framework and react-testing-library to test React components. In Rails we make tests using RSpec.

      Our main database is PostgreSQL, but we also use MongoDB to store some type of data. We started to use Redis  for cache and other time sensitive operations.

      We have a couple of extra projects: One is an Employee app built with React Native and the other is an internal back office dashboard built with Next.js for the client and Python in the backend side.

      Since we have different frontend apps we have found useful to have Bit to document visual components and utils in JavaScript.

      See more
      Flutter logo

      Flutter

      6.1K
      6.6K
      822
      Cross-platform mobile framework from Google
      6.1K
      6.6K
      + 1
      822
      PROS OF FLUTTER
      • 101
        Hot Reload
      • 84
        Cross platform
      • 80
        Performance
      • 69
        Backed by Google
      • 54
        Compiled into Native Code
      • 43
        Open Source
      • 40
        Fast Development
      • 38
        Fast Prototyping
      • 37
        Expressive and Flexible UI
      • 31
        Single Codebase
      • 28
        Reactive Programming
      • 22
        Material Design
      • 19
        Target to Fuchsia
      • 18
        Widget-based
      • 17
        Dart
      • 13
        IOS + Android
      • 11
        Great CLI Support
      • 10
        Tooling
      • 10
        Easy to learn
      • 9
        You can use it as mobile, web, Server development
      • 8
        Have built-in Material theme
      • 8
        Support by multiple IDE: Android Studio, VS Code, XCode
      • 8
        Debugging quickly
      • 7
        Easy Testing Support
      • 7
        Target to Android
      • 6
        Have built-in Cupertino theme
      • 6
        Written by Dart, which is easy to read code
      • 6
        Community
      • 6
        Good docs & sample code
      • 6
        Target to iOS
      • 5
        Easy to Unit Test
      • 5
        Real platform free framework of the future
      • 5
        Flutter is awesome
      • 5
        Easy to Widget Test
      CONS OF FLUTTER
      • 25
        Need to learn Dart
      • 10
        No 3D Graphics Engine Support
      • 9
        Lack of community support
      • 6
        Graphics programming
      • 5
        Lack of friendly documentation
      • 2
        Lack of promotion
      • 1
        Https://iphtechnologies.com/difference-between-flutter

      related Flutter posts

      Vaibhav Taunk
      Team Lead at Technovert · | 31 upvotes · 1.5M views

      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.

      See more

      I've been juggling with an app idea and am clueless about how to build it.

      A little about the app:

      • Social network type app ,
      • Users can create different directories, in those directories post images and/or text that'll be shared on a public dashboard .

      Directory creation is the main point of this app. Besides there'll be rooms(groups),chatting system, search operations similar to instagram,push notifications

      I have two options:

      1. React Native, Python, AWS stack or
      2. Flutter, Go ( I don't know what stack or tools to use)
      See more
      jQuery Mobile logo

      jQuery Mobile

      1.4K
      285
      0
      Touch-Optimized Web Framework for Smartphones & Tablets
      1.4K
      285
      + 1
      0
      PROS OF JQUERY MOBILE
        Be the first to leave a pro
        CONS OF JQUERY MOBILE
          Be the first to leave a con

          related jQuery Mobile posts

          Ganesa Vijayakumar
          Full Stack Coder | Module Lead · | 18 upvotes · 2.3M 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
          CoreRender logo

          CoreRender

          58
          45
          0
          React-inspired Swift library for writing UIKit UIs
          58
          45
          + 1
          0
          PROS OF CORERENDER
            Be the first to leave a pro
            CONS OF CORERENDER
              Be the first to leave a con

              related CoreRender posts