- Syllabus
- Instructor: David Tang (dtang@usc.edu)
- TA: Yingzhe (Nikki) Liu / Office Hours: 2:00pm - 3:30pm on Friday on Zoom
- SQL Playground
- Final Project Requirements (due 5/1 at 11:59pm)
(4/25) Week 16 - Guest Lecture on NoSQL Databases with Michal Meyers
(4/18) Week 15 - Laravel Livewire, Laravel Conclusion / Introduction to Node.js
- React Example
- Laravel Livewire
- Demo (Laravel Livewire)
- Laracasts
- Laravel Origins: The Documentary
- Node.js Slides (Posted in Slack)
- Demo (Node.js)
(4/11) Week 14 - Building a REST API
- REST APIs (slides)
- Demo
- Laravel Documentation: Eloquent Serialization
- Laravel Documentation: Eloquent API Resources
- The JSON:API Specification
- Action Item before 4/18 class: Download the LTS version of Node.js
(4/4) Week 13 - Consuming Third-Party APIs and Caching
- What is an API? (slides)
- Demo
- Laravel Documentation: Cache
- Laravel Documentation: HTTP Client
- Action Item before 4/11 class: Download Postman
- Participation (due 4/11 at 11:59pm) - Third-Party API Tutorial
(3/28) Week 12 - Mail and Queues
(3/21) Week 11 - Authorization with Gates and Policies
(3/14) Week 10 - Spring Break (No Class)
(3/7) Week 9 - Midterm
(2/28) Week 8 - Writing Migrations and Custom Middleware (Asynchronous Class)
- Recording
- Demo
- Laravel Documentation: Migrations
- Laravel Documentation: Middleware
- Midterm on 3/7
- Assignment 6 (due 3/7 at 11:59pm)
(2/21) Week 7 - Presidents' Day (No Class)
(2/14) Week 6 - Running Migrations, Authentication, and Built-in Middleware
- Demo
- Laravel Documentation: Migrations
- Laravel Documentation: Authentication Starter Kits
- Laravel Documentation: Authentication
- Laravel Documentation: Middleware
- Midterm on 3/7
- Assignment 5 (due 2/28 at 11:59pm)
(2/7) Week 5 - Object-Relational Mapping (ORM)
- ORM Slides
- Demo
- Laravel Documentation: Eloquent
- Assignment 3 (due 2/14 at 11:59pm)
- Assignment 4 (due 2/14 at 11:59pm)
(1/31) Week 4 - CRUD, Validation, and Flash Messages
- CSRF Slides
- Demo
- Assignment 3 (due in 2 weeks on 2/14 at 11:59pm)
- Reading: Protecting Web Applications Against Cross-Site Request Forgery (CSRF) Attacks
(1/24) Week 3 - Introduction to Laravel
- Topics: MVC, Routes, Controllers, Query Builder, Views, Deploying to Heroku
- MVC Slides
- Demo
- Assignment 2 (due 1/31 at 11:59pm)
- Essential Laravel Sail Commands
- Video: PHP Namespaces in under 5 Minutes
- Continue Learning: Object-Oriented Programming in PHP
(1/17) Week 2 - MLK (No Class)
(1/10) Week 1 - Review of Database-driven Web Pages with PHP and SQL
- Slides
chinook
database SQL dump- Demo
- Assignment 1 (due 1/24 at 11:59pm)
- Action Item: Scaffold a Laravel application called "music-app"
- Video: How to create a free Postgres database on Heroku and connect to it from TablePlus
- Video: How to connect to a Postgres database in PHP using the PDO class