Need advice about which tool to choose?Ask the StackShare community!

PHONK

0
5
+ 1
0
React Native

20.8K
17.7K
+ 1
1.1K
Add tool

React Native vs PHONK: What are the differences?

React Native: A framework for building native apps with React. 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; PHONK: JavaScript scripting for Android devices. It is a self-contained creative scripting toolbox for new and old Android Devices. Create scripts rapidly from your phone or using the remote Web Editor on your computer. The API is simple and extensive. GUI, audio, graphics, bluetooth ble, arduino, OSC, midi, and much more.

React Native and PHONK belong to "Cross-Platform Mobile Development" category of the tech stack.

Some of the features offered by React Native are:

  • Native iOS Components
  • Asynchronous Execution
  • Touch Handling

On the other hand, PHONK provides the following key features:

  • Superfast to code with
  • Open Source and does not rely on any cloud services
  • Simple & Powerful

React Native is an open source tool with 88.3K GitHub stars and 19.6K GitHub forks. Here's a link to React Native's open source repository on GitHub.

Advice on PHONK and React Native
Nikhilesh Goyal
Senior Embedded Engineer at GreyOrange | 5 upvotes 路 162.9K views
Needs advice
on
Unity
React Native
and
Flutter

Hi Friends, I am new to #MobileAppDevelopment and I need to make a #CrossPlatformMobileApp. I want guidance regarding which tools should I use to build a mobile app. Main requirements: integrate Unity game engine and provide a platform for social chats.

Past experience - C++ and Python

I have tagged Flutter and React Native but if anything better than both please suggest them.

See more
Replies (3)
Sahil Singh
Product Manager at AutoVRse | 10 upvotes 路 150.6K views
Recommends
Unity

Hey, If you are using Unity you are going to have to do the end to end development on Unity, you can directly build for android and iOS on Unity. I dont see how Flutter or React Native fit into this equation. Unity is a standalone engine. As for Social Chats, you could use Firebase or your own API and integrate that in Unity in C#

See more
Recommends
Unity

I agree with Sahil. If Unity is a requirement, best way is to use just that to create your app.

If you really want, it should be possible to use Flutter and Unity together. Using Flutter Unity Widget. Although I wouldn't recommend it just yet. It's too early days.

If you do end up using it, I would be very interested in reading about your experiences.

See more
Mathieu Grenier
Recommends
Unity

You can start by small steps with Flutter and after Unity. Flutter = best choice to build a small cross-platform mobile app. With or no flutter, use directly Unity. Y'll have complete control but it's harder for new mobile developers. Keep in mind, the requirement is Unity!

See more
Needs advice
on
Redux
React Native
and
Expo
in

Hello guys, I am new here. So, if I posted without specific guidelines, please ignore.

Basically, I am an iOS developer and developing native apps for the last three years. Recently, I started learning React Native to develop apps for both platforms. If anyone out there knows any useful resources that will become a better react native developer.

#newbie

See more
Replies (1)
Javier Silva Ort铆z
Senior Full Stack Developer at Aleph Engineering | 6 upvotes 路 88.1K views
Recommends
Redux

Well, the first resource I would recommend you is my upcoming book by Packt Publishing, "Professional React Native", but it's due late January next year :) . Now jokes aside (the book's real by the way :) ), the easiest way to build a iOS/Android/Web app with React Native is to do: npm install -g expo-cli expo init some-project cd some-project expo eject

You might have heard of Expo, but trust me, stay away from it. Expo highest value is that it's an already pre-configured 3 platforms environment, but if you don't eject then you're vendor-locked to what Expo has to offer in iOS and Android, which is very poor compared to going full React Native on these platforms, they can't even handle Google Sign In properly and by the way, even if your app is 10 lines of code your app size will be over 40 MB if you don't eject, yep it's that bad, plus the performance is regular and the loading times slow, not to mention that you're stuck with their build service which the free tier makes you wait for hours for a free build slot. It's important to note that when ejecting you don't lose the Web, you simply do expo start --web to start your dev environment and expo build:web to build a static website that you can serve with any web server. Regarding state management, don't bother with "lifting state up" philosophies mixed with Context API to manage your state, lifting state is a great pattern and helps your codebase, Context is great to avoid prop-drilling, but NEVER mix them to achieve app-wide state management, for that, simply go for Redux or MobX, the hype is all about Redux, but I consider MobX far better in many aspects. However, as you're getting new into this I would recommend you start with Redux AND PLEASE grab yourself npm install @manaflair/redux-batch so that you can batch updates and don't bring your app to a crawl. Forget that "connect HOC" thing with React-Redux, don't bother for a second with it, go with Hooks and useSelector and useDispatch and the likes, it will make your code SO much cleaner and smaller. Adopt clean and new Hooks philosophy, avoid writing class components as much as possible and write function components augmented with Hooks.

See more
Needs advice
on
Vue Native
and
React Native

I'm a huge fan of Vue.js and I'm pretty comfortable with it. I need to build a mobile app for my company and I was now wondering whether I could make use of VueJS with Vue Native instead of switching to React. I know Vue Native builds on top of RN. My question is whether I'd have as much freedom with Vue Native over RN and whether you feel like Vue Native is "production ready" or not. Not sure of which shortcomings I may find using Vue Native... Thanks a lot!!!

See more
Replies (1)
Barry Hylton
Recommends
Vue Native

Vue Native is definitely production-ready in my experience. I've used both, have apps built with both in production right now, and both are fine technologies. As far as I can recall, there's nothing in RN that you can't do in VN. Given that, I would say go with "the devil you know".

That said, the one downside of VN over RN is that there are a lot more people using RN last I checked, so there are likely more resources readily available.

See more
Decisions about PHONK and React Native
Thuan Nguyen
FE Lead at SOLID ENGINEER | 5 upvotes 路 255.1K views
  • Javascripts is the most populated language in the world.
  • Easy to learn & deployed production
  • Fast development
  • Strong community
  • Completed Documents
  • Native performance with lower RAM used.
  • Easy to handle native issues by using native code like Java / Objective C
  • Powered by Facebook.
See more
Nick Skriabin

We built the first version of our app with RN and it turned out a mess in a while. A lot of bugs along with poor performance out of the box for a fairly large app. Many things, that native platform has, cannot be done with existing solutions for RN. For instance, large titles on iOS are not fully implemented in any of existing navigations libraries. Also there's painfully slow JSON bridge and many other small, yet annoying things. On the other hand Flutter became a really powerful and easy-to-use tool. A bit of a learning curve, of course, because of Dart, but it worth learning. Flutter offers TONS of built-in features, no JSON-bridge, AOT compilation for iOS.

See more
Aleksandr Filatov
Contract Software Engineer - Microsoft | 2 upvotes 路 114.2K views

I've done some Hybrid Mobile apps with both technologies Apache Cordova and React Native and described my experience in my blog.

In a few words, I would suggest to use each technology in accordance what what is your current code base and what do you want to achieve.

React Native is a great option if you need that extra edge in performance with multi-threading and native UI rendering. Or you already have a web app based on React which you want to port to mobile.

On the other hand, if you have an existing web application code and you want to reuse some or all, including the ability to use web third-party libraries, then Cordova is the best option.

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of PHONK
Pros of React Native
    Be the first to leave a pro
    • 200
      Learn once write everywhere
    • 161
      Cross platform
    • 159
      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
      It is free and open source
    • 9
      Easy setup
    • 9
      Backed by Facebook
    • 9
      Great community
    • 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

    Sign up to add or upvote prosMake informed product decisions

    Cons of PHONK
    Cons of React Native
      Be the first to leave a con
      • 22
        Javascript
      • 17
        Built by facebook
      • 11
        Cant use CSS
      • 2
        Some compenents not truly native
      • 1
        30 FPS Limit

      Sign up to add or upvote consMake informed product decisions

      No Stats

      What is PHONK?

      It is a self-contained creative scripting toolbox for new and old Android Devices. Create scripts rapidly from your phone or using the remote Web Editor on your computer. The API is simple and extensive. GUI, audio, graphics, bluetooth ble, arduino, OSC, midi, and much more.

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

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use PHONK?
      What companies use React Native?
        No companies found
        See which teams inside your own company are using PHONK or React Native.
        Sign up for Private StackShareLearn More

        Sign up to get full access to all the companiesMake informed product decisions

        What tools integrate with PHONK?
        What tools integrate with React Native?

        Sign up to get full access to all the tool integrationsMake informed product decisions

        Blog Posts

        What are some alternatives to PHONK and React Native?
        Ionic
        Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
        Flutter
        Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
        Xamarin
        Xamarin鈥檚 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鈥檚 most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
        Apache Cordova
        Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.
        PhoneGap
        PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
        See all alternatives