
Explore the nitty gritty of javascript and react for developers, covering the DOM, event driven development, API calls, ESX, dependency management, and build tools under Cassidy Williams.
Discover mac software setup for this course, including choosing an editor (Atom recommended), and using Chrome to view results, with flexibility for other editors and browsers.
Learn how to set up a Windows development environment for JavaScript and React, including choosing an editor and using Chrome for testing and consistency.
Master the document object model (DOM) and learn to use and manipulate it for complex web apps and a common technical interview question.
I will explain what the DOM is and how it relates to the HTML we write in webpages, and show that JavaScript can access the DOM.
I will explain the DOM API, and cover functions from typical job interviews, including getElementById, querySelector, createAttribute, and more. This is a fundamental topic to understand moving forward.
Students will solve a common technical interview question: finding a particular DOM node based on a data attribute.
Students will review my solution to the activity question: finding a particular DOM node based on a data attribute.
Explore event driven development in JavaScript as you build an app that toggles themes in response to browser events like page load, hover, changes, and data loaded.
I will explain in further detail events in JavaScript and the functions they provide in a given application.
I will explain what a callback is, and how to use them with regards to events.
In this activity, we will create a browser event triggered by a button click that will change the theme of a website. This should take around 10-15 minutes, depending on how much you want to customize!
Students will review my solution to the activity.
Learn how ajax enables pulling external resources and data into web pages without full page reloads, and explore what ajax does under the hood with HTTP requests.
Students will learn how AJAX came to be, synchronous vs. asynchronous programming, and how prevalent AJAX is in the web today.
I will go over the different AJAX methods one might find when using an API, what each means, and what HTTP responses you can expect from them.
Students will make an AJAX request to the GitHub API using XMLHttpRequest
Students will make an AJAX request to the GitHub API using Promises.
Explore json, a data storage and transfer format that is not javascript but its own language, essential for javascript development and usage.
I will explain how to pull information from JSON and lead students to making an API call and parsing the data.
Students will parse the data retrieved from the GitHub API and display it in the browser, building their own GitHub User search engine.
Students will review my solution to the GitHub API User search activity.
Explore variable visibility and scope in JavaScript, explaining how scope differs from other languages, and prepare with a quiz on common interview questions.
I will explain the nuances of scope and the variable this in JS compared to other languages, and how it works through examples.
Explore ES6, the sixth version of JavaScript under the ECMAScript standard, and learn its new features. Take quizzes and join a fun activity to reinforce ES6 topics.
I will explain transpiling and polyfilling as a means of making code work across all browsers.
I will explain the different variable declaration types in ES6. I will also explain how block scoping as evolved in ES6 compared to previous versions of JavaScript.
Students will learn the convenience of default values in ES6.
Students will learn array and object destructuring.
Students will learn about the similarly named (though differently functioning) object and template literals.
Students will learn about ES6 Arrow Functions, their syntax, and how the context of "this" is lexical in an arrow function.
In this activity, we'll make a NASA image search site. This will be similar to our GitHub user search activity, but with a few more parts.
Your assignment:
Add a loading indicator and a sidebar of previous search terms to the api-driven project, using local storage to persist terms, as the instructor previews the upcoming solution.
In this section, students will review what we learned so far about JavaScript.
Explore dependency management and build tools for modern web apps, including npm, yarn, grunt, gulp, and webpack, and learn how to compile and bundle JavaScript projects.
Install Node and npm, verify versions, and install Yarn, Grunt, Gulp, and Webpack globally. Then prepare your development environment for the course.
Students will learn what npm and Yarn are, and how to run a very basic setup for projects with them.
Students will learn what Grunt is, and how an example project is set up with it.
Students will learn how to set up a watcher and an uglifier with Grunt, and are challenged to also add in the grunt-babel plugin.
Students will learn what Gulp is, and how an example project is set up with it.
Students will learn how to compile Handlebars templating with Gulp, and build their own portfolio site in the process.
Students will learn what webpack is, and how an example project is set up with it.
Students will review what we have learned thus far in this section, and I'll direct them to documentation for further information, if needed.
Discover why React remains a popular front-end framework and how its core concepts transfer to other frameworks like Angular and Vue, boosting your front-end developer job prospects.
Students will learn why React was built, and what React can do, and why one would choose it for their applications.
Students will see where React can live in a web application.
Students will learn what JSX is, and the advantages of using it in React.
If you have some coding experience under your belt, but you want to take your web development skills to the next level, this course is for you. This is a comprehensive introduction to the deeper ins-and-outs of JavaScript, and the modern, increasingly popular framework, React.
Whether you are a student or working developer who only knows Java or Python, a wannabe developer who’s learning on their own, an applicant for a coding bootcamp, or a developer who hasn’t touched web technologies in a while, the concepts covered in this course will help you beef up your knowledge, your skills, your resume, and your portfolio.
In this course, you will:
Master fundamental JavaScript concepts like the DOM, Events and Callbacks, and AJAX
Call real-world APIs and parse the data in your own web projects
Work with the new features of the JavaScript language thanks to ES6
Use popular web tooling including npm, Yarn, Grunt, Gulp, and webpack
Study the ins and outs of React component lifecycles, state, properties, and other core React concepts
Build modern web projects with React
Deploy your web applications online for the world to see
Take real-world interview practice quizzes as you build your knowledge
You’ll be practicing your skills through quizzes and by building both simple and complex projects in this course, including but not limited to a website theme toggler, a NASA Image Search site, a personal portfolio site, and a markdown note manager. Each of these projects are expandable in a way where you can customize it to your heart’s content, perfect for your own portfolios. The quizzes cover actual interview questions as well as topics you’ll see throughout your front-end development career. By the end of this course, you should feel comfortable doing a JavaScript job interview.