“A developer needs tools that support her/his workflow to be fully productive”. Well, I guess that this statement fits to any profession that you can think of. It is really important for me to feel that the environment that I’m working in really supports my flow and works well with my approach to software development. That’s why, today I’d like to share a number of things that boost my productivity while creating mobile app in React Native.
The following list has been prepared by a developer that comes from the native iOS background. If you have web background, then these things won’t be as revolutionary as they are for a developer with pure mobile experience. ;)
I cannot emphasize strongly enough how much I love storybooks. This single tool itself can greatly improve your workflow on UI parts of your application. Storybook allows you to create stories in which you prepare pre filled UI elements with data that could possibly show up there during normal app lifetime. Later within a few seconds you can easily go through all stories that you’ve described and see how they look on your device / emulator without the need of going through all of these states in normal app flow which takes much longer time.
This is a tiny example of a single story, however if you develop a normal app, you will surely have much more of them which may cover all of possible UI states for your components.
Having an ability to easily work with an isolated UI in the application and work on your logic code with tests as a first client can greatly improve your productivity. You will end up with much faster feedback loop and components created in isolation, which will make it easier to share them later. At the time that you have your UI components prepared and logic ready to be used, then the only thing left is to finally integrate them in the main application. This task will be also simplified due to the fact that you can utilize a hot reloading feature and benefit from the fact that you don’t have to wait for your app to recompile in order to check the results of your work. What’s even better - you can easily check this on both Android and iOS devices in a quick way.
What are the things that improve your workflow? I’d be glad to hear about them!
This article is cross-posted with my my company blog