All in One Offer! | Access Unlimited Courses in any category starting at just $29. Offer Ends in:

Browse Library

  • Business Solutions
  • Become an Instructor
  • 0
    Shopping Cart

    Your Cart is empty. Keep shopping to find a course!

    Browse Courses
Free
3 days left at this price!

This plan includes

  • Limited free courses access
  • Play & Pause Course Videos
  • Video Recorded Lectures
  • Learn on Mobile/PC/Tablet
  • Quizzes and Real Projects
  • Lifetime Course Certificate
  • Email & Chat Support
Get Unlimited Learning Access
$29
3 days left at this price!
30-Day Money-Back Guarantee

This plan includes

  • Access to 11,000+ Courses
  • Ads free experience Courses
  • Play & Pause Course Videos
  • HD Video Recorded Lectures
  • Learn on Mobile/PC/Tablet
  • Quizzes and Real Projects
  • Lifetime Course Certificate
  • Instructor Direct Support
  • Email & Chat Support
  • Cancel Anytime
$29
$29
$29
  • React
  • Typescript
  • Redux
  • Redux Toolkit
  • Redux thunks
  • Docker
  • Docker compose
  • Material UI
  • Implementing dark mode
  • Authentication with Auth0
  • React Router DOM
  • Redux Persist
  • Jest
  • Selectors with Reselect

In this course, you will learn how to build a simple yet complex app (a code editor in the browser inspired in VS Code using the Monaco Editor). You will learn a lot of things from such a simple project:

  1. React with Typescript (we are going to use React Hooks and use it with TS)

  2. React best practices (configuring Prettier for formatting your projects, centralizing environment variables, centralizing your theme config, etc)

  3. Redux (dispatching actions, using selectors, etc.)

  4. Redux Toolkit (creating async and synchronous thunks, slices, etc.)

  5. Material UI (we will be using lots of components from this UI library and learn how to use the ThemeProvider)

  6. Testing (with Jest!)

  7. Docker (to dockerize our app easily!)

  8. Authentication with Auth0 (we'll learn how to configure an SPA with Auth0 and use its hooks)

  9. Protecting routes with React Router Dom and Auth0

  10. Implementing dark mode (with the help of MUI)

At the end of this course, you will be able to transfer all the knowledge you will get to a real world application. You can also take this project as a portfolio project. It contains lots of things that you would use in a big React application.

Lots of courses concentrate on the basics of React. In this course we will be building a simple yet complex app. You will see that we will cover lots of things in such a short amount of time!

  • Basic knowledge of React and Javascript
  • Basic knowledge of Redux
  • React developers
  • Javascript developers
  • Frontend developers
View More...
  • Section 1 : Introduction 5 Lectures 00:18:35

    • Lecture 1 :
    • Lecture 2 :
    • Defining the Code Editor App requirements
    • Lecture 3 :
    • Installing Node.js
    • Lecture 4 :
    • Installing Docker and Docker Compose
    • Lecture 5 :
    • Creating the Auth0 account
  • Section 2 : Setting up the project 6 Lectures 00:27:43

    • Lecture 1 :
    • Creating the boilerplate code
    • Lecture 2 :
    • Configuring Prettier for fomatting
    • Lecture 3 :
    • Adding the necessary dependencies
    • Lecture 4 :
    • Dockerizing the app
    • Lecture 5 :
    • Configuring Auth0
    • Lecture 6 :
    • Setting up environment variables
  • Section 3 : Starting to write the first components 2 Lectures 00:08:13

    • Lecture 1 :
    • Creating the AuthProvider component
    • Lecture 2 :
    • Creating a common Loading component
  • Section 4 : Starting to set up Redux 6 Lectures 00:21:21

    • Lecture 1 :
    • Creating the dark mode slice
    • Lecture 2 :
    • Adding tests for the dark mode reducer
    • Lecture 3 :
    • Configuring Redux persist
    • Lecture 4 :
    • Configuring the store
    • Lecture 5 :
    • Creating the ReduxProvider component
    • Lecture 6 :
    • Creating typed hooks
  • Section 5 : Dealing with the theme 2 Lectures 00:08:54

    • Lecture 1 :
    • Configuring the app colors
    • Lecture 2 :
    • Creating the CustomThemeProvider component
  • Section 6 : Authentication and routing components 7 Lectures 00:25:41

    • Lecture 1 :
    • Creating protected routes with Auth0
    • Lecture 2 :
    • Creating the Routes component
    • Lecture 3 :
    • Creating the Header component
    • Lecture 4 :
    • Creating the SignIn component
    • Lecture 5 :
    • Creating the SignOut component
    • Lecture 6 :
    • Creating the authenticated and unauthenticated buttons
    • Lecture 7 :
    • Testing the authentication
  • Section 7 : Creating the home page 2 Lectures 00:00:00

    • Lecture 1 :
    • Creating the Home page component
    • Lecture 2 :
    • Testing the Home page with RTL
  • Section 8 : The file viewer component 15 Lectures 01:34:48

    • Lecture 1 :
    • Defining the Custom File and File viewer types
    • Lecture 2 :
    • Creating the Files reducer
    • Lecture 3 :
    • Adding the files reducer business logic
    • Lecture 4 :
    • Testing the files reducer (part 1)
    • Lecture 5 :
    • Testing the files reducer (part 2)
    • Lecture 6 :
    • Changing the store folder structure
    • Lecture 7 :
    • Creating the selectActiveFiles selector
    • Lecture 8 :
    • Creating the Open Workspace button
    • Lecture 9 :
    • Reading files (part 1)
    • Lecture 10 :
    • Reading files (part 2)
    • Lecture 11 :
    • Creating an Extension Icon reusable component
    • Lecture 12 :
    • Tests for the selectFileViewerData selector
    • Lecture 13 :
    • Creating the selectFileViewerData selector
    • Lecture 14 :
    • Creating the File Viewer component
    • Lecture 15 :
    • Creating the Open File thunk
  • Section 9 : Creating the editor 7 Lectures 00:47:09

    • Lecture 1 :
    • Creating the Code Editor page
    • Lecture 2 :
    • Creating the Code Editor container
    • Lecture 3 :
    • Creating the Custom Tab Panel
    • Lecture 4 :
    • Creating the onTabClick handler
    • Lecture 5 :
    • Creating the Custom Tab Label component
    • Lecture 6 :
    • Creating the Close File thunk
    • Lecture 7 :
    • Creating the CustomCreating the Custom Monaco Editor and finishing the app
  • Section 10 : Conclusion 1 Lectures 00:01:12

    • Lecture 1 :
    • Conclusion
  • How do i access the course after purchase?

    It's simple. When you sign up, you'll immediately have unlimited viewing of thousands of expert courses, paths to guide your learning, tools to measure your skills and hands-on resources like exercise files. There’s no limit on what you can learn and you can cancel at any time.
  • Are these video based online self-learning courses?

    Yes. All of the courses comes with online video based lectures created by certified instructors. Instructors have crafted these courses with a blend of high quality interactive videos, lectures, quizzes & real world projects to give you an indepth knowledge about the topic.
  • Can i play & pause the course as per my convenience?

    Yes absolutely & thats one of the advantage of self-paced courses. You can anytime pause or resume the course & come back & forth from one lecture to another lecture, play the videos mulitple times & so on.
  • How do i contact the instructor for any doubts or questions?

    Most of these courses have general questions & answers already covered within the course lectures. However, if you need any further help from the instructor, you can use the inbuilt Chat with Instructor option to send a message to an instructor & they will reply you within 24 hours. You can ask as many questions as you want.
  • Do i need a pc to access the course or can i do it on mobile & tablet as well?

    Brilliant question? Isn't it? You can access the courses on any device like PC, Mobile, Tablet & even on a smart tv. For mobile & a tablet you can download the Learnfly android or an iOS app. If mobile app is not available in your country, you can access the course directly by visting our website, its fully mobile friendly.
  • Do i get any certificate for the courses?

    Yes. Once you complete any course on our platform along with provided assessments by the instructor, you will be eligble to get certificate of course completion.
  • For how long can i access my course on the platform?

    You require an active subscription to access courses on our platform. If your subscription is active, you can access any course on our platform with no restrictions.
  • Is there any free trial?

    Currently, we do not offer any free trial.
  • Can i cancel anytime?

    Yes, you can cancel your subscription at any time. Your subscription will auto-renew until you cancel, but why would you want to?

192425 Course Views

3 Courses

Hi! My name is David Armendariz and I am a software developer and mathematician. I have experience working as a Full Stack developer in different projects and I am myself a curious mind that tries to teach what I learn on a daily basis.
View More...
  • Unmatched Variety and Value!
    Learnfly's monthly subscription offers unlimited access to a vast range of courses. Affordable pricing, compared to competitors, makes it the ultimate choice for continuous learning.
    Jessica M.

    4.7

    JM
  • Top-Notch Quality, Affordable Rates!
    High-quality courses with certified instructors make Learnfly stand out. The affordable pricing is a game-changer for those seeking premium education.
    Alex P.

    4.5

    AP
  • Certified Excellence Every Time!
    Learnfly's courses, taught by certified instructors, ensure top-notch learning experiences. The course completion certificates add significant value to one's skill set.
    Sarah R.

    4.3

    SR
  • Round-the-Clock Support!
    Learnfly goes the extra mile with 24/7 course support. Their dedication to helping students succeed is commendable.
    Ryan K.

    4.1

    RK
  • Learn Anywhere, Anytime!
    Whether on mobile, PC, or tablet, Learnfly's platform offers flexibility. Learning on the go has never been easier.
    Emily S.

    4.7

    ES
  • Job-Ready Skills!
    Learnfly's job-oriented courses equip learners with practical skills for the workplace. An investment in career growth!
    Jake M.

    4.2

    JM
  • Budget-Friendly Brilliance!
    Learnfly's pricing is a steal for the quality and variety of courses offered. Quality education without breaking the bank.
    Olivia T.

    4.5

    OT
  • Instructor Excellence Unleashed!
    Learn from the best with Learnfly's certified instructors. The platform ensures that knowledge is imparted by industry experts.
    Daniel L.

    4.0

    DL
  • Achievement Unlocked!
    Learnfly not only offers courses but also recognizes your efforts with course completion certificates. A sense of accomplishment with every course finished.
    Maya H.

    4.6

    MH
  • Learning Revolution!
    Learnfly's platform is a revolution in education. Access to unlimited courses at affordable rates is a game-changer.
    Ethan W.

    4.7

    EW
  • the-extreme-web-development-course

    The Extreme Web Development Course

    By : Paul Carlo Tordecilla

    Lectures 124 Beginner 4:26:22
  • develop-your-own-chrome-extension-firefox-plugin

    Develop your own Chrome Extension &...

    By : Harshit Srivastava

    Lectures 15 Beginner 2:1:54
  • the-ultimate-codeigniter-3-course

    The Ultimate Codeigniter 3 Course

    By : Paul Carlo Tordecilla

    Lectures 23 Beginner 2:17:35
  • superb-advance-javascript-become-javascript-professional

    Superb Advance Javascript - Become ...

    By : Paul Carlo Tordecilla

    Lectures 28 Beginner 1:28:39
  • application-development-with-ibm-watson

    Application development with IBM Wa...

    By : Harshit Srivastava

    Lectures 14 Intermedite 1:42:29
  • learn-react-16-and-redux-by-building-real-world-application

    Learn React 16 and Redux by buildin...

    By : Haider Malik

    Lectures 74 Beginner 6:46:11

Students learning on Learnfly works with Fortune 500 companies around the globe.

Sign Up & Start Learning
By signing up, you agree to our Terms of Use and Privacy Policy
Reset Password
Enter your email address and we'll send you a link to reset your password.