(11/26) Week 14 - Thanksgiving (No Class)
(11/19) Week 13 - Introduction to Ember
- Convention Over Configuration
- Ember.js
- Ember CLI Surge
- Wildcard / Globbing Routes
- Extra Credit (due 11/26 at 11:59pm)
- Code
- Lecture Recording
(11/12) Week 12 - Environment Variables in React / React Hooks
- React Hooks Documentation
- Counter with a class
- Counter with a hook
- Fetching data with
useEffect
- Tip: Optimizing Performance by Skipping Effects
- Fetching data with
componentDidUpdate
vs.useEffect
- Lab 5 - Research Convention Over Configuration (due 11/19 at 11:59pm)
- Lecture Recording
(11/5) Week 11 - Apps with CRUD (Part 2) - The Frontend
- Node.js Environment Variables
- Hosting a Node.js API on Heroku
- Cross-origin Resource Sharing (CORs)
- Understanding CORS
- LinkedIn Learning: How CORS works
- What is ‘CORS’? What is it used for?
- expressjs/cors
<Redirect>
- Assignment 8 (due 11/12 at 11:59pm)
- Code (see Pull Requests)
(10/29) Week 10 - Midterm Review
(10/22) Week 9 - Midterm
(10/15) Week 8 - Apps with CRUD (Part 1) - The API
- Review Component Testing
- REST APIs (slides)
- JSON:API
- Building an API in Node.js with Express
- nodemon
- Postman App
- No Assignment or Lab
- Code
- Lecture Recording
(10/8) Week 7 - Testing Components and Continuous Integration
- Assignment 7 (due 10/15 at 11:59pm)
- Lab 3 - Research JSON:API (due 10/15 at 6pm)
- Starter Files
- Code
- Lecture Recording
(10/1) Week 6 - Client-side Routing
- React Router
componentDidUpdate
- Nested Routes
- Assignment 6 (due 10/8 at 11:59pm)
- Lab 2 - Research Testing (due 10/8 at 6pm)
- Code
- Lecture Recording
(9/24) Week 5 - Building Reusable Components Part 1 (React)
- One-Way Data Flow
- React Fragments
children
prop- Typechecking with
PropTypes
- Assignment 5 (due 10/1 at midnight)
- Code
- Lecture Recording
(9/17) Week 4 - Events, Data Flow, and Managing Component State (React)
- Handling Events
- Forms
- Controlled Components Demo
- Lifting State Up
- Lowest Common Ancestor
- Assignment 4 (due 9/24 at midnight)
- Code
- Lecture Recording
(9/10) Week 3 - Introduction to Components (React)
- create-react-app
- JSX
- Components, Props, and State
- State and Lifecycle
- Conditional Rendering
- Promise.all
- fetch()
- Deploying React Projects to Surge.sh
- Quiz Time on Kahoot!
- Assignment 3 (due 9/17 at midnight)
- Lecture Recording
- Code
(9/3) Week 2
- Lecture Recording
- Async/Await and Try/Catch Blocks
- Client-side Templating with Handlebars
- Moment.js
- Event Delegation
- Starter files
- Assignment 2 (due 9/10 at midnight)
- Lab 1 - Research React (due 9/10 at midnight)
- TODO: Install Node.js before class next week
(8/27) Week 1
- Command Line Basics
- Introduction to Git, GitHub, and Slack
- Quiz Time on Kahoot!
- Traditional Web Apps vs. Single Page Apps (SPAs)
- Ajax
- Synchronous vs Asynchronous Demo
- Promises Part 1
- HTTP response status codes
- JSON
- Client-Side Rendering Without a Library
- XSS
- DOMPurify
- Quiz Time on Kahoot!
- Assignment 1 (due 9/3 at midnight)
- Lecture Recording
- Code