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.
409
400
+ 1
5

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

136.5K
114.3K
3.9K
A JavaScript library for building user interfaces
136.5K
114.3K
+ 1
3.9K
PROS OF REACT
  • 787
    Components
  • 661
    Virtual dom
  • 570
    Performance
  • 497
    Simplicity
  • 440
    Composable
  • 178
    Data flow
  • 164
    Declarative
  • 125
    Isn't an mvc framework
  • 115
    Reactive updates
  • 113
    Explicit app state
  • 42
    JSX
  • 26
    Learn once, write everywhere
  • 20
    Uni-directional data flow
  • 19
    Easy to Use
  • 15
    Works great with Flux Architecture
  • 11
    Great perfomance
  • 9
    Javascript
  • 9
    Built by Facebook
  • 6
    Speed
  • 6
    TypeScript support
  • 5
    Easy to start
  • 5
    Cross-platform
  • 5
    Server Side Rendering
  • 5
    Scalable
  • 5
    Awesome
  • 5
    Hooks
  • 5
    Feels like the 90s
  • 4
    Scales super well
  • 4
    Functional
  • 4
    Server side views
  • 4
    Fancy third party tools
  • 4
    Excellent Documentation
  • 4
    Props
  • 4
    Closer to standard JavaScript and HTML than others
  • 3
    Rich ecosystem
  • 3
    Great migration pathway for older systems
  • 3
    Super easy
  • 3
    Simple
  • 3
    Has functional components
  • 3
    Allows creating single page applications
  • 3
    SSR
  • 3
    Fast evolving
  • 3
    Simple, easy to reason about and makes you productive
  • 3
    Just the View of MVC
  • 3
    Beautiful and Neat Component Management
  • 3
    Sdfsdfsdf
  • 3
    Very gentle learning curve
  • 3
    Start simple
  • 3
    Has arrow functions
  • 3
    Strong Community
  • 2
    Every decision architecture wise makes sense
  • 2
    Easy as Lego
  • 2
    Split your UI into components with one true state
  • 2
    Sharable
  • 2
    Fragments
  • 2
    Permissively-licensed
  • 1
    Image upload
  • 1
    Recharts
CONS OF REACT
  • 36
    Requires discipline to keep architecture organized
  • 25
    No predefined way to structure your app
  • 24
    Need to be familiar with lots of third party packages
  • 9
    JSX
  • 7
    Not enterprise friendly
  • 5
    One-way binding only
  • 2
    State consistency with backend neglected
  • 2
    Bad Documentation
  • 1
    Paradigms change too fast

related React posts

Vaibhav Taunk
Team Lead at Technovert · | 31 upvotes · 2.1M 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
Adebayo Akinlaja
Engineering Manager at Andela · | 28 upvotes · 1.4M views

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.

See more
Swift logo

Swift

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

35
47
6
The Cocoa frameworks consist of libraries, APIs, and runtimes that form the development layer for all of OS...
35
47
+ 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

    755
    378
    262
    A lightweight and modular front-end framework for developing fast and powerful web interfaces
    755
    378
    + 1
    262
    PROS OF UIKIT
    • 39
      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
      Modular
    • 5
      Modern look
    • 5
      Because I can create amazing things with little effort
    • 4
      Responsiveness
    • 3
      Small but Active Community
    • 2
      No requires jquery
    • 2
      Convenient JS Components
    • 2
      Based on Flexbox
    • 2
      Responsive grid
    CONS OF UIKIT
      Be the first to leave a con

      related UIkIt posts

      Daniel Hernández Alcojor
      Frontend Developer at atSistemas · | 8 upvotes · 727.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

      27.6K
      24.3K
      1.1K
      A framework for building native apps with React
      27.6K
      24.3K
      + 1
      1.1K
      PROS OF REACT NATIVE
      • 207
        Learn once write everywhere
      • 168
        Cross platform
      • 165
        Javascript
      • 120
        Native ios components
      • 67
        Built by facebook
      • 63
        Easy to learn
      • 44
        Bridges me into ios development
      • 40
        It's just react
      • 39
        No compile
      • 36
        Declarative
      • 22
        Fast
      • 13
        Virtual Dom
      • 12
        Insanely fast develop / test cycle
      • 12
        Livereload
      • 11
        Great community
      • 9
        It is free and open source
      • 9
        Native android components
      • 9
        Easy setup
      • 9
        Backed by Facebook
      • 7
        Highly customizable
      • 7
        Scalable
      • 6
        Awesome
      • 6
        Everything component
      • 6
        Great errors
      • 6
        Win win solution of hybrid app
      • 5
        Not dependent on anything such as Angular
      • 5
        Simple
      • 4
        Awesome, easy starting from scratch
      • 4
        OTA update
      • 3
        As good as Native without any performance concerns
      • 3
        Easy to use
      • 2
        Many salary
      • 2
        Can be incrementally added to existing native apps
      • 2
        Hot reload
      • 2
        Over the air update (Flutter lacks)
      • 2
        'It's just react'
      • 2
        Web development meets Mobile development
      • 1
        Ngon
      CONS OF REACT NATIVE
      • 23
        Javascript
      • 18
        Built by facebook
      • 12
        Cant use CSS
      • 4
        30 FPS Limit
      • 2
        Generate large apk even for a simple app
      • 2
        Some compenents not truly native
      • 2
        Slow

      related React Native posts

      Vaibhav Taunk
      Team Lead at Technovert · | 31 upvotes · 2.1M 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

      11.8K
      12.1K
      1.1K
      Cross-platform mobile framework from Google
      11.8K
      12.1K
      + 1
      1.1K
      PROS OF FLUTTER
      • 127
        Hot Reload
      • 106
        Cross platform
      • 98
        Performance
      • 82
        Backed by Google
      • 69
        Compiled into Native Code
      • 54
        Fast Development
      • 54
        Open Source
      • 49
        Fast Prototyping
      • 44
        Expressive and Flexible UI
      • 43
        Single Codebase
      • 35
        Reactive Programming
      • 31
        Material Design
      • 26
        Widget-based
      • 25
        Dart
      • 24
        Target to Fuchsia
      • 17
        IOS + Android
      • 14
        Easy to learn
      • 14
        Great CLI Support
      • 13
        Tooling
      • 13
        You can use it as mobile, web, Server development
      • 12
        Have built-in Material theme
      • 11
        Target to Android
      • 11
        Good docs & sample code
      • 11
        Community
      • 11
        Debugging quickly
      • 10
        Support by multiple IDE: Android Studio, VS Code, XCode
      • 9
        Easy Testing Support
      • 9
        Written by Dart, which is easy to read code
      • 8
        Target to iOS
      • 8
        Real platform free framework of the future
      • 8
        Have built-in Cupertino theme
      • 7
        Easy to Unit Test
      • 7
        Easy to Widget Test
      CONS OF FLUTTER
      • 28
        Need to learn Dart
      • 10
        No 3D Graphics Engine Support
      • 9
        Lack of community support
      • 7
        Graphics programming
      • 6
        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 · 2.1M 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
      Shared insights
      on
      DartDartFlutterFlutter

      Hi, I'm considering building a social marketplace app on android, ios and web, Flutter seems to be a good UI framework for cross-platform apps, it's safe type, hot reload, and native compiling on native machine code (thanks to Dart). My question is, for an MVP product is it a good choice? if yes, will it be on the mid-term, long term? Or will I have to change as the users grow?

      thank you

      See more
      jQuery Mobile logo

      jQuery Mobile

      1.5K
      299
      0
      Touch-Optimized Web Framework for Smartphones & Tablets
      1.5K
      299
      + 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 | Technical Lead · | 19 upvotes · 3.1M 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
          54
          0
          React-inspired Swift library for writing UIKit UIs
          58
          54
          + 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