Fieldbuddy in 2 minutes
Try FieldBuddy
Sign up here for a free demo

Want to find out what FieldBuddy can do for you? Fill out the form below to get started.

    Request a quote
    Be surprised by the endless possibilities

    Fill in the form below.

      Questions or remarks?

      We're happy to help. Contact us via the contact form below and we will get back to you as soon as possible.

        User Interface FieldBuddy Swift – Technical blog 3

        FieldBuddy lanceert smartphone app voor servicemonteurs

        Other libraries

        Another essential decision to make is a UI toolkit. Unfortunately there are not many UI toolkit there in the React Native world yet. One of the most complete set of components is NativeBase. We decided to use it for our development because it seemed to consist of any basic component that we might need. Recently however we found ourselves moving more often towards other options. None of them is as rich and complete as NativeBase but they are very solid alternatives. One example is react-native-elements (Elements) that offers a relatively small number of high quality components but they’re very good and predictable. Other libraries are rather very specialized and focus on doing one thing good, eg. react-native-scrollable-tab-view and react-native-action-button.

        Neither NativeBase, nor Elements offers a good calendar or agenda component. And since the FieldBuddy Swift app is at the end of the day all about appointments, that was a serious headache for our team. Eventually, we found one of the most spectacular React Native library  called react-native-calendars that turns out to be highly customizable

        There are other libraries of an amazing quality and flexibility. For animation purposes, we use two great libraries: react-native-animatable and lottie, and thanks to react-native-svg we’re able to offer Signature Pad feature. Map is displayed and customized with react-native-maps library. We search our components on They must support both Android and iOS, and be compatible with Expo. FieldBuddy Swift relies on a number of common libraries: lodash, ramda, numbro and moment. We code using modern JavaScript with a static type checker flow. Our unit tests run with jest. We don’t do enough with enzyme yet but it is on our roadmap. Sentry and logentries serve as error-handling and logging services. And there are more and more libraries. Most of the libraries improve their quality every with every single release and so is FieldBuddy Swift.


        React Native and Expo grow quickly yet safely, they are more mature and powerful every month. More features that were available only for the native apps become now a part of React Native experience. That’s why working with React Native and Expo is so exciting. Our small team learns a lot within a very short period of time working the latest cutting-edge technology. So we’ve got a feeling that the journey is just beginning although our roadmap is full for coming months. Many features will be implemented soon. Primary focus on smartphone will be now extended also on tablets. We’d like to improved the quality and testability of UI components.


        This posts opens hopefully a series of articles where we’re going to present our React Native development journey.

        >> Read: Greg explains FieldBuddy Swift – Technical blog 1

        >> Read: Greg explains FieldBuddy Swift – Technical blog 2


        About the author