The newline Guide to React Native for JavaScript Developers using TypeScript
Code along, and learn to build scalable and performant apps with React Native, from a Product perspective.
- 5.0 / 5 (12 ratings)
- Published
- Updated
6 hrs 42 mins
22 Videos

Amit Mangal
Everything front-end. Startup Contributor. Web / Cross platform apps.
01Remote
You can take the course from anywhere in the world, as long as you have a computer and an internet connection.
02Self-Paced
Learn at your own pace, whenever it's convenient for you. With no rigid schedule to worry about, you can take the course on your own terms.
03Community
Join a vibrant community of other students who are also learning with The newline Guide to React Native for JavaScript Developers using TypeScript. Ask questions, get feedback and collaborate with others to take your skills to the next level.
04Structured
Learn in a cohesive fashion that's easy to follow. With a clear progression from basic principles to advanced techniques, you'll grow stronger and more skilled with each module.
How to build real world apps. Code along.
Build a Design System for your app
How to do state management in React Native
Storyboarding - Build apps from a Product perspective
Understand the React Native ecosystem, the right way
Jumpstart using a template that has ~200 github stars
Architecture that separates design and development
Learn UX best practices and troubleshoot performance bottlenecks
With React Native, the most important thing is to understand the ecosystem and how it comes together to create an app. By understanding the overall architecture, we will be able to take the full of advantage the platform.
The course will start by covering the fundamentals like setting up the navigation, setting up the screens, styles, and the UI elements, before moving on to more advanced topics such as state management, crash/error reporting, setting up analytics and middlewares, debugging, and performance optimizations. We will also learn how to avoid/fix frame drops - possibly the most watched parameter of any UI application.
We will also build a Design System and will follow the Atomic Design Pattern of building layouts. A Design System primarily consists of three parts:
- UI Inventory and Patterns
- Typography
- Spacing and Styles
We will cover these in detail through the modules of the course. We will also learn about the React Native best practices, how to avoid rabbit holes, and focus on building a performant app.
This is an opinionated way of building apps with React Native. The fundamentals discussed in the course, like Atomic Design Pattern and Design System, can be applied to building any UI application, not just ones using React Native.
One Complete App
The course comes with one complete eCommerce sample app that is discussed through the modules of the course.
Up-to-date
The course builds on an open-source boilerplate template and is kept up to date with React, React Native and dependent library versions. It is also updated with the latest APIs and libraries that are introduced, like Hooks, hermes, flipper etc.
Why this course
React Native for JavaScript Developers using TypeScript is based on years of experience in building React Native apps on production. The open-source boilerplate code discussed in the course is the platform for multiple apps on App Store and Play Store today. One of them being a Unicorn.
We will take a Product based development approach to building apps. React Native abstracts out a lot of platform specific nuances, so wouldn't focusing on building the app as an experience make the most sense. The design pattern will help us exactly with that, and we will put together a structure that is both scalable and extensible. This architecture also helps keep the design separate from the development.
At the end of this course, you will not only be able to build real-world apps with React Native, but also have the fundamentals of building any enterprise UI application.
Discord channel
Our students work at
Course Syllabus and Content
Getting Started
5 Lessons 53 Minutes
For JavaScript developers who want to learn React Native. Learn how to build not just an app, but a Product.
Where does React Native fall within app categories? Should you invest in it?
Once you get the hang of the ecosystem around React Native, building apps will be the easy part. We need to consider storyboarding - the art of the right way to build apps.
Starting from the ground up? We'll look at the structure of the boilerplate code. An opinionated way to build apps, inspired by several apps in production.
Set up, build and run the boilerplate code, with a battle-hardened template and all the necessary tools already integrated.
Navigation and Screens
3 Lessons1 Hours 14 Minutes
Stacked app or tabbed navigation, drawer menus and modals, and what's the best place to load user sessions, and other application data.
Set the app's launch screen and icons. Learn what image to put in native and what to bundle with React Native. Set the tab bar icons.
Learn about the screen lifecycle, and customize the app bar and the back button. We will also look at perceived load time and how to manage it.
Design System
7 Lessons1 Hours 58 Minutes
Atomic design is a mental model of how the UI should be built and laid out. It is at the core of how we are going to build our apps.
To build a design system we need to start by defining a typography; defining the fonts, colors and icons of the app.
Global styles help lay the design structure the app should follow. We'll extend our typography from the previous lesson to define styles, mainly for atoms, molecules and organisms.
Should we use images or SVGs? Should we be putting them in the React Native bundle, or on native and save OTA bandwidth? Let's look at the best practices.
We'll look at the Atomic design pattern's atoms and molecules; what they are and how they help build the design system of the app.
Built using atoms and molecules, Organisms are the complex components that deliver specific features. They are at the core of an app that delivers a consistent UX.
What happens when we press a button on an app vs when we press a button on a web page? That difference is User Experience.
State Management
3 Lessons1 Hours 14 Minutes
State Management in React Native has similar options to React.
Context API provides a way to pass data through the component tree - no more prop-drilling!
Let's learn about Flux and Redux.
API calls and Middlewares
3 Lessons1 Hours 20 Minutes
The very reliable "fetch". Learn the best practices for structuring the app's services and APIs to make them resilient to change.
Middleware allows for side-effects to be executed without blocking state updates. Logger and Analytics make for perfect use cases.
AsyncStorage is an asynchronous, unencrypted, persistent, key-value storage system for React Native.
Debugging
3 Lessons
How to debug a React Native app and a look at a working combination of tools and techniques. Remote Debugger, DevTools and error boundaries.
React Native Debugger and Flipper; the evolution of debugging options at React Native.
Running on a real device is imperative to testing how the app will actually perform.
Performance
2 Lessons
How JavaScript works. Learn best practices, find the node that is taking time to render, improve FPS performance, learn when to do image caching and find out about Hermes.
Does your app have lot of images or tabs? Thousands of items or an endless scroll? Let's look at how to handle it best in React Native.
CodePush and Error Reporting
3 Lessons
CodePush is Microsoft's App Center cloud service that enables React Native developers to deploy mobile app updates directly to their users' devices.
Error reporting in JavaScript and native code
Bonus Content
3 Lessons 1 Minutes
The one-stop solution for micro-animations in a React Native app.
Look no further than React Native SVG for your SVG solution.
Some common references and special components supported by React Native, Android back handler, and a bit of know-how!
Subscribe for a Free Lesson
By subscribing to the newline newsletter, you will also receive weekly, hands-on tutorials and updates on upcoming courses in your inbox.
What Students are Saying
Meet the Course Instructor

Purchase the course today
newline Pro Subscription
$18/MO
Get unlimited access to the course, plus 60+ newline books, guides and courses. Learn More
Billed annually or $40/mo billed monthly. Free to cancel anytime.
- Discord Community Access
- Full Transcripts
- Project Completion Guarantee
- Lifetime Access
Plus:
- Unlimited access to 60+ newline Books, Guides and Courses
- Interactive, Live Project Demos for Every newline Book, Guide and Course
- Complete Project Source Code for Every newline Book, Guide and Course
- Best Value 🏆
Frequently Asked Questions
What kind of approach to app development is followed?
We will be following the Atomic design pattern closely along with building a Design System for the app. These concepts are not tribal to React Native and are critical to building any UI application.
Who is this course for?
The course is designed for developers who have been working with JavaScript for a long time, and now want to build apps using React Native. The course does not assume any native app development experience.
What if I need help?
You can ask us questions anytime through the community Discord channel or by sending us a message.
Are there any prerequisites?
The course assumes you are comfortable with JavaScript. We can learn React and Redux (state management) as we go, though some basic knowledge is required.