We started to build the APSL mobile team almost three years ago. In the early days we used to build our apps with Phonegap/Cordova and Ionic Framework with Angular pre-1.x. After a few failures and very small successes, React Native was open sourced and we embraced the technology since the first day it went out. Sure it was a risk for us, but we wanted to be able to build mobile apps that felt native and multi-platform at a reasonable cost. React Native matched all of these requirements. The performance, look and feel, responsiveness and UX of our apps greatly improved after the switch. We started to build real apps, not embedded websites.
Our first steps with React Native
As we said, the user experienced got a boost from the switch to RN, but in the early days the framework lacked support for Android and for some important features. One of them was virtual keyboard handling for iOS. We started to build a library that was later called
react-native-keyboard-aware-scroll-view that tried to solve the issue. In the beginning, the library only resized the scroll view to avoid the keyboard from hiding views located at the bottom, but now the library even supports automatic scroll to focused inputs.
One interesting thing about this little library was the development of the auto scroll feature. We had to investigate and dig deep into the React Native source code and we submitted a bunch of pull requests to be able to bring this feature. This is something that is expected and embraced by all the APSL teams. We are experts in our fields and when we invest in technology, we're not afraid of getting our hands dirty if we have to.
The future of APSL's React Native libraries
The past week, our
react-native-keyboard-aware-scroll-view just passed 1,000 🌟 on Github. We're super happy about this, not only because it's our first repo to hit that number, but also because almost half a million people have downloaded and used our component. We also gave access to external contributors to help us bring more features and solve issues. And there is a company that uses our component in their product, our friends at Native Base.
Nowadays, React Native ships with a keyboard handling view. We still haven't decided if we will keep investing in our solution or embrace the RN one. Whatever happens, we are going to keep building and open sourcing stuff we feel it's useful for the community and us.
We think that React Native is the best way to build most of the mobile apps, and we're still investing on this technology. Our roadmap is to build more small components/utilities and publish them as separated libraries. This is going to enable us to deliver more high quality apps our customers expect but with a more robust foundation. Now that our team is bigger, we feel that we're ready to take a next step and give more to the OSS community.
Follow us at our Github page and check the variety of open source software we're building, from DevOps to Django, Python or React.