WebDevelopment | React Native | Javascript

How I Built Dinjob, My First React Native App

or how I learned there’s still lot to learn in react native even if you know react js

Anubhav Negi
3 min readMar 27, 2023

When I decided to build my first mobile application as part of my personal projects, I knew I wanted to use a framework that was both flexible and powerful. After some research, I decided to give React Native a try, and let me tell you, it was quite the journey!

First things first, what is React Native? It’s a framework that allows you to build native mobile applications using JavaScript and React. The best part? You can create an app for both iOS and Android platforms using the same codebase. This was a huge advantage for me, as I didn’t have to learn two different programming languages to build my app.

So, with my trusty desktop and some coffee, I started building Dinjob — my job finding app that dynamically fetches data from the JSearch Rapid API. I was completely new to React Native, but I had an ace up my sleeve — the JavaScript Mastery YouTube channel run by Adrian Hajdin, with his help, I was able to quickly get up to speed with React Native and start building out Dinjob. And boy, did I learn a lot!

Development process can be long so make sure to straighten your back and avoid bad postures

One of the first things I learned was how to use Expo, a set of tools and services that helps you build, deploy, and test your React Native apps. It made setting up the project and running it on my phone a breeze.

Next, I had to implement a job details page which was a bit challenging, as I had to figure out how to pass data between screens and make sure everything was displaying correctly but with the help of the React Navigation library, I was able to create a seamless experience for my users.

I also created custom hooks for fetching data from the JSearch Rapid API. This allowed me to keep my code organized and made it easy to reuse the same code across different screens.

Of course, I couldn’t forget about styling, with React Native’s StyleSheet, I was able to create dynamic styles that adjusted to different screen sizes. And let’s be real, who doesn’t love a responsive design?

To make the app more user-friendly, I implemented search functionality and pagination. This allowed users to easily find the jobs they were looking for without having to scroll through a long list.

And finally, I added custom screen headers to give the app a polished and professional look. It was the perfect finishing touch to my project.

Overall, building Dinjob was an incredible learning experience, from learning the ins and outs of React Native, to understanding how to effectively fetch data from an API, I feel like I have leveled up my skills as a developer. I couldn’t have done it without the help of Adrian Hajdin and the JavaScript Mastery YouTube channel. So, thank you, Adrian, for providing such amazing resources for developers like myself to learn from.

If you’re thinking about building a mobile app, I highly recommend giving React Native a try, with its flexibility and powerful features, it’s a great choice for both beginners and experienced developers alike.

Here is the link to my github repository: https://github.com/starlove54/dinjob

You can also visit my website here: https://anubhavnegi.com/

--

--