React Native MacOS App Tutorial – Book Management System
Skills:
Prompt Craft90%LLM Foundations80%Prompting Basics70%Advanced Prompting60%Agent Foundations50%
Learn how to use React Native to build a sophisticated MacOS app that allows users to search and explore books using the Google Books API and manage their personal bookshelves. You'll also implement AI-powered summaries and ensure smooth navigation and state management. By the end, you'll have a fully integrated app with advanced features and understand how to build your own MacOS applications.
✏️ Course created by Brijen Makwana.
💻 Source Code: https://github.com/BrijenMakwana/read-scout
Bug Bridger for Stack Overflow app: https://play.google.com/store/apps/details?id=com.brijenmakwana.BugBridger
❤️ Try interactive React courses we love, right in your browser: https://scrimba.com/freeCodeCamp-React (Made possible by a grant from our friends at Scrimba)
⭐️ Contents ⭐️
⌨️ (0:00:00) Book Management MacOS App (React Native)
⌨️ (0:01:29) Setup React Native on your Mac
⌨️ (0:02:31) Initialize the Project
⌨️ (0:06:11) Cleanup the Project
⌨️ (0:09:21) SearchBar Component
⌨️ (0:16:15) Intro to Google Books API
⌨️ (0:16:58) Use Postman to test the API
⌨️ (0:18:29) Integrate Google Books API in the Project
⌨️ (0:24:28) Setup Tanstack Query
⌨️ (0:28:41) useSearch Custom Hook
⌨️ (0:34:07) BookItem Component
⌨️ (0:44:31) Render Books on Home Screen
⌨️ (0:48:42) Add support for Icons in the Project
⌨️ (0:51:17) Rating in BookItem
⌨️ (0:55:58) Setup React Navigation
⌨️ (0:58:50) Add new Route for Book Screen
⌨️ (1:04:37) useBook Custom Hook
⌨️ (1:09:19) Implement Book Screen
⌨️ (1:31:38) Add types to React Navigation
⌨️ (1:34:52) SelectBookShelf Component
⌨️ (1:44:47) Add new Route for Bookshelves Screen
⌨️ (1:51:39) SegmentedButtons Component
⌨️ (2:02:35) Intro to Zustand
⌨️ (2:04:34) Setup Zustand
⌨️ (2:09:04) Zustand store for Bookshelves
⌨️ (2:15:30) BookShelfItem Component
⌨️ (2:18:02) Render Books on Bookshelves Screen
⌨️ (2:23:41) Implement update book in Zustand
⌨️ (2:26:31) Implement remove book in Zustand
⌨️ (2:33:22) Implement Local Storage Support
⌨️ (2:41:11) AI
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from freeCodeCamp.org · freeCodeCamp.org · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
Dates - Beau teaches JavaScript
freeCodeCamp.org
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
The Definition of Ready - Agile Software Development
freeCodeCamp.org
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
Working Agreement - Agile Software Development
freeCodeCamp.org
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
Definition of Done - Agile Software Development
freeCodeCamp.org
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
The INVEST approach to product backlog items
freeCodeCamp.org
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org
More on: Prompt Craft
View skill →Related AI Lessons
⚡
⚡
⚡
⚡
The "AI Pivot" Nobody Is Talking About
Medium · AI
Top 10 Future Jobs in High Demand by 2030 (Complete Guide)
Medium · Programming
Google Search Revenue Up 19%. Publisher Traffic Down 38%. Same AI. Same Quarter.
Medium · AI
HUMAN OS — Why the Future Belongs to Humans Who Learn Faster Than AI
Medium · AI
🎓
Tutor Explanation
DeepCamp AI