Kyle Gawley – How To Build a SaaS Product (PRO)
Instant download
English
Updated April 26, 2024
Course Content
See exactly what's inside before you buy.
Full course library
19 folders · 506 files
Course Description
Kyle Gawley – How To Build a SaaS Product (PRO)

What You Get in Kyle Gawley – How To Build a SaaS Product (PRO):
Architecture Of a SaaS Application
- Understanding client & server
- What is an API?
- Understanding Model-View-Controller
- Single or multi-tenant SaaS?
- Features of a SaaS app
Building Your Stack
- Does tech stack matter?
- Why use Javascript?
- Which framework is best?
- Setting up the project
- Configuring the development environment
Data Modelling
- Why start with data?
- Relational or non-relational data?
- Data modeling tools
- Designing data models
- The normalization, Foreign Keys & Cascades
Controllers & Models
- Scaffolding the models
- CRUD anatomy
- ORMs and query builders
- Creating the models & controllers
- Security considerations
Building a REST API
- What is a REST API?
- Building the API
- Global error handling
- Throttling for security
- Testing with Postman
Authentication Part 1 (Server-Side)
- Issuing JWT auth tokens
- Sign-up and sign-in flows
- Protecting API endpoints
- User roles and permissions
- Creating scoped API keys
Email Notifications
- Setting up Mailgun
- Building a mail module
- Avoid HTML table hell with JSON emails
- Allowing users to customize email settings
- Sending email notifications to users
Authentication Part 2 (Client-Side)
- Client authentication best practices
- Client routing & private routes
- Sign-in and Sign up flows
- Forgot password flow
- Sign outflow
Bonus: UI Design School
- Layout
- Color
- Scale
- Typography
- Iconography
User Management
- Understanding organizations and users
- Building a user admin UI
- Building a user invite flow
- The user sign-up flow
- Multi-organization logic
Build a SaaS Billing System With Stripe
- Creating the billing UI
- Upgrading, downgrading & canceling
- Updating the credit cards
- Secure Customer Authentication (SCA)
- Implementing free trials
Creating a Profile Page With Photo Uploads
- Creating the public profile page
- Creating the photo uploader
- Storing photos in Amazon S3
- Designing a photo grid
- Photo detail page with comments
Building The Dashboard
- Building a SaaS dashboard
- Create the API key admin UI
- Tracking photo views
- Add photo metrics
- Building a helpful view
Testing
- Why you should test
- Types of tests
- Writing unit tests
- Writing integration tests
- UI & user testing
SaaS Security Practices
- Keep packages up to date
- Preventing XSS attacks
- Content security policies
- Understanding CORS
- Database security
Deploying a SaaS Application
- Choosing a hosting platform
- Configuring the production environment
- Database SSL certificates
- Deploying to Heroku
- Building a deployment pipeline
Next Steps
- Advanced features to consider
- Launching your app
- Marketing your app
- Building an audience
- Feedback
Related Products
E-COMMERCE
$39.00
Course Content
- 00-Welcome
- 01-Introduction.mp4
- 01-Introduction.png
- 02-About Your Instructor.mp4
- 02-About Your Instructor.png
- 02-About Your Instructor.txt
- 03-What We are Going To Cover.mp4
- 03-What We are Going To Cover.png
- 03-What We are Going To Cover.txt
- 04-How This Course Is Structured.mp4
- 04-How This Course Is Structured.png
- 04-How This Course Is Structured.txt
- 05-What You Need To Know.mp4
- 05-What You Need To Know.png
- 05-What You Need To Know.txt
- 01-Architecture Of a SaaS Application
- 01-Introduction- What You are Going To Learn.mp4
- 01-Introduction- What You are Going To Learn.png
- 01-Introduction- What You are Going To Learn.txt
- 02-Discussion 1- Product Walkthrough.mp4
- 02-Discussion 1- Product Walkthrough.png
- 02-Discussion 1- Product Walkthrough.txt
- 03-Discussion 2- Code Walkthrough.mp4
- 03-Discussion 2- Code Walkthrough.png
- 03-Discussion 2- Code Walkthrough.txt
- 04-Recap- What You Have Learned.mp4
- 04-Recap- What You Have Learned.png
- 04-Recap- What You Have Learned.txt
- 02-Building Your Stack
- 01-Introduction- What You are Going To Learn.mp4
- 01-Introduction- What You are Going To Learn.png
- 01-Introduction- What You are Going To Learn.txt
- 02-Discussion 1- Does Tech Stack Matter.mp4
- 02-Discussion 1- Does Tech Stack Matter.png
- 02-Discussion 1- Does Tech Stack Matter.txt
- 03-Discussion 2- Why Use Javascript.mp4
- 03-Discussion 2- Why Use Javascript.png
- 03-Discussion 2- Why Use Javascript.txt
- 04-Discussion 3- Which Database Should You Use.mp4
- 04-Discussion 3- Which Database Should You Use.png
- 04-Discussion 3- Which Database Should You Use.txt
- 05-Discussion 4- Which Javascript Framework Should You Use.mp4
- 05-Discussion 4- Which Javascript Framework Should You Use.png
- 05-Discussion 4- Which Javascript Framework Should You Use.txt
- 06-Discussion 5- Which Server Framework Should You Use.mp4
- 06-Discussion 5- Which Server Framework Should You Use.png
- 06-Discussion 5- Which Server Framework Should You Use.txt
- 07-Discussion 6- What Are Development Environments.mp4
- 07-Discussion 6- What Are Development Environments.png
- 07-Discussion 6- What Are Development Environments.txt
- 08-Practical 1- Installing Server Packages.mp4
- 08-Practical 1- Installing Server Packages.png
- 08-Practical 1- Installing Server Packages.txt
- 09-Practical 2- Creating server.js.mp4
- 09-Practical 2- Creating server.js.png
- 09-Practical 2- Creating server.js.txt
- 10-Practical 3- Config And Environment Variables.mp4
- 10-Practical 3- Config And Environment Variables.png
- 10-Practical 3- Config And Environment Variables.txt
- 11-Practical 4- Setting Up The Client App.mp4
- 11-Practical 4- Setting Up The Client App.png
- 11-Practical 4- Setting Up The Client App.txt
- 12-Practical 5- Committing To Github.mp4
- 12-Practical 5- Committing To Github.png
- 12-Practical 5- Committing To Github.txt
- 13-Recap- What You Have Learned.mp4
- 13-Recap- What You Have Learned.png
- 13-Recap- What You Have Learned.txt
- 14-Quiz.png
- 14-Quiz.txt
- Case_Study-Node.js-NASA.pdf
- 03-Data Modelling
- 01-Introduction- What You are Going To Learn.mp4
- 01-Introduction- What You are Going To Learn.png
- 01-Introduction- What You are Going To Learn.txt
- 02-Discussion 1- Why Start With Data Modelling.mp4
- 02-Discussion 1- Why Start With Data Modelling.png
- 02-Discussion 1- Why Start With Data Modelling.txt
- 03-Discussion 2- Data Modelling Tools.mp4
- 03-Discussion 2- Data Modelling Tools.png
- 03-Discussion 2- Data Modelling Tools.txt
- 04-Discussion 3- Database Normalisation.mp4
- 04-Discussion 3- Database Normalisation.png
- 04-Discussion 3- Database Normalisation.txt
- 05-Discussion 4- Foreign Keys And Cascades.mp4
- 05-Discussion 4- Foreign Keys And Cascades.png
- 05-Discussion 4- Foreign Keys And Cascades.txt
- 06-Practical 1- Data Modelling.mp4
- 06-Practical 1- Data Modelling.png
- 06-Practical 1- Data Modelling.txt
- 07-Practical 2- Writing The Migrations.mp4
- 07-Practical 2- Writing The Migrations.png
- 07-Practical 2- Writing The Migrations.txt
- 08-Recap- What You Have Learned.mp4
- 08-Recap- What You Have Learned.png
- 08-Recap- What You Have Learned.txt
- 09-Quiz.png
- 09-Quiz.txt
- data_model-220525-134704.numbers
- data_model-220525-134704.xlsx
- knexfile-220525-134848.zip
- migrations-220525-134848.zip
- 04-Models & Controllers
- 01-Introduction- What You are Going To Learn.mp4
- 01-Introduction- What You're Going To Learn.png
- 01-Introduction- What You're Going To Learn.txt
- 02-Discussion 1- What Is Model-View-Controller.mp4
- 02-Discussion 1- What Is Model-View-Controller.png
- 02-Discussion 1- What Is Model-View-Controller.txt
- 03-Discussion 2- Should You Use an ORM or Query Builder.mp4
- 03-Discussion 2- Should You Use an ORM or Query Builder.png
- 03-Discussion 2- Should You Use an ORM or Query Builder.txt
- 04-Discussion 3- Atomy Of a Model.mp4
- 04-Discussion 3- Atomy Of a Model.png
- 04-Discussion 3- Atomy Of a Model.txt
- 05-Practical 1- Creating The Knex Model.mp4
- 05-Practical 1- Creating The Knex Model.png
- 05-Practical 1- Creating The Knex Model.txt
- 06-Practical 2- Creating The Account Model.mp4
- 06-Practical 2- Creating The Account Model.png
- 06-Practical 2- Creating The Account Model.txt
- 07-Practical 3- Creating The User Model.mp4
- 07-Practical 3- Creating The User Model.png
- 07-Practical 3- Creating The User Model.txt
- 08-Practical 4 Creating the Photo Model.mp4
- 08-Practical 4- Creating the Photo Model.png
- 09-Discussion 4- Atomy Of a Controller.mp4
- 09-Discussion 4- Atomy Of a Controller.png
- 09-Discussion 4- Atomy Of a Controller.txt
- 10-Practical 5- Creating The Account Controller.mp4
- 10-Practical 5- Creating The Account Controller.png
- 10-Practical 5- Creating The Account Controller.txt
- 11-Practical 6- Creating The User Controller.mp4
- 11-Practical 6- Creating The User Controller.png
- 11-Practical 6- Creating The User Controller.txt
- 12-Practical 7- Creating The Photo Controller.mp4
- 12-Practical 7- Creating The Photo Controller.png
- 12-Practical 7- Creating The Photo Controller.txt
- 13-Recap- What You Have Learned And Homework.mp4
- 13-Recap- What You Have Learned And Homework.png
- 13-Recap- What You Have Learned And Homework.txt
- 14-Homework Answer.mp4
- 14-Homework Answer.png
- 14-Homework Answer.txt
- 15-Quiz.png
- 15-Quiz.txt
- ?
- 05-Building A Rest API
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Note- Bugs And Errors.mp4
- 02-Note- Bugs And Errors.png
- 02-Note- Bugs And Errors.txt
- 03-Discussion 1- What Is an API.mp4
- 03-Discussion 1- What Is an API.png
- 03-Discussion 1- What Is an API.txt
- 04-Discussion 2- What Is a REST API.mp4
- 04-Discussion 2- What Is a REST API.png
- 04-Discussion 2- What Is a REST API.txt
- 05-Discussion 3- How Does a REST API Work-1-.png
- 05-Discussion 3- How Does a REST API Work-2-.png
- 05-Discussion 3- How Does a REST API Work-3-.png
- 05-Discussion 3- How Does a REST API Work.mp4
- 05-Discussion 3- How Does a REST API Work.txt
- 06-Practical 1- Building Our REST API-postman_collection-220614-102407.json
- 06-Practical 1- Building Our REST API.mp4
- 06-Practical 1- Building Our REST API.png
- 06-Practical 1- Building Our REST API.txt
- 07-Practical 2- Throttling Our API.mp4
- 07-Practical 2- Throttling Our API.png
- 07-Practical 2- Throttling Our API.txt
- 08-Practical 3- Bug Fixes And Improvements.mp4
- 08-Practical 3- Bug Fixes And Improvements.png
- 08-Practical 3- Bug Fixes And Improvements.txt
- 09-Recap- What You Have Learned And Homework.mp4
- 09-Recap- What You Have Learned And Homework.png
- 09-Recap- What You Have Learned And Homework.txt
- 10-Homework Answer.mp4
- 10-Homework Answer.png
- 10-Homework Answer.txt
- 11-Quiz.png
- 11-Quiz.txt
- 06-Authentication Part 1
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- How Authentication Works.mp4
- 02-Discussion 1- How Authentication Works.png
- 02-Discussion 1- How Authentication Works.txt
- 03-Discussion 2- What Is a JWT.mp4
- 03-Discussion 2- What Is a JWT.png
- 03-Discussion 2- What Is a JWT.txt
- 04-Discussion 3- User Roles And Permissions.mp4
- 04-Discussion 3- User Roles And Permissions.png
- 04-Discussion 3- User Roles And Permissions.txt
- 05-Practical 1- Sign In Flow And Protecting Routes-postman_collection-220622-143816.json
- 05-Practical 1- Sign In Flow And Protecting Routes.mp4
- 05-Practical 1- Sign In Flow And Protecting Routes.png
- 05-Practical 1- Sign In Flow And Protecting Routes.txt
- 06-Practical 2- Sign Up And Sign Out-postman_collection-220622-143825.json
- 06-Practical 2- Sign Up And Sign Out.mp4
- 06-Practical 2- Sign Up And Sign Out.png
- 06-Practical 2- Sign Up And Sign Out.txt
- 07-Discussion 4- How API Keys Work.mp4
- 07-Discussion 4- How API Keys Work.png
- 07-Discussion 4- How API Keys Work.txt
- 08-Practical 3- Creating API Keys.mp4
- 08-Practical 3- Creating API Keys.png
- 08-Practical 3- Creating API Keys.txt
- 08-Practical 3- Creating API Keys_postman_collection-220622-143836.json
- 09-Recap- What You Learned And Homework.mp4
- 09-Recap- What You Learned And Homework.png
- 09-Recap- What You Learned And Homework.txt
- 07-Email Notifications
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Why Send Email Notifications.mp4
- 02-Discussion 1- Why Send Email Notifications.png
- 02-Discussion 1- Why Send Email Notifications.txt
- 03-Practical 1- Building The Mail Model-foto_module_7postman_collection-220630-100509.json
- 03-Practical 1- Building The Mail Model.mp4
- 03-Practical 1- Building The Mail Model.png
- 03-Practical 1- Building The Mail Model.txt
- 04-Practical 2- Custom Notification Settings.mp4
- 04-Practical 2- Custom Notification Settings.png
- 04-Practical 2- Custom Notification Settings.txt
- 05-Recap And Homework.mp4
- 05-Recap And Homework.png
- 05-Recap And Homework.txt
- 06-Homework Solution.mp4
- 06-Homework Solution.png
- 06-Homework Solution.txt
- 08-Authentication Part 2
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- How Does Client Authentication Work.mp4
- 02-Discussion 1- How Does Client Authentication Work.png
- 02-Discussion 1- How Does Client Authentication Work.txt
- 03-Discussion 2- Local Storage or Cookies.mp4
- 03-Discussion 2- Local Storage or Cookies.png
- 03-Discussion 2- Local Storage or Cookies.txt
- 04-Practical 1- Setting Up The Client.mp4
- 04-Practical 1- Setting Up The Client.png
- 04-Practical 1- Setting Up The Client.txt
- 05-Discussion 3- Additional Client Auth Considerations.mp4
- 05-Discussion 3- Additional Client Auth Considerations.png
- 05-Discussion 3- Additional Client Auth Considerations.txt
- 06-Practical 2- Signing In And Private Routes.mp4
- 06-Practical 2- Signing In And Private Routes.png
- 06-Practical 2- Signing In And Private Routes.txt
- 07-Practical 3- Checking The Auth Status.mp4
- 07-Practical 3- Checking The Auth Status.png
- 07-Practical 3- Checking The Auth Status.txt
- 08-Practical 4- Reset Password Flow.mp4
- 08-Practical 4- Reset Password Flow.png
- 08-Practical 4- Reset Password Flow.txt
- 09-Practical 5- Update Password Flow.mp4
- 09-Practical 5- Update Password Flow.png
- 09-Practical 5- Update Password Flow.txt
- 10-Bug Fixes.mp4
- 10-Bug Fixes.png
- 10-Bug Fixes.txt
- 11-Recap- What You Have Learned And Homework.mp4
- 11-Recap- What You Have Learned And Homework.png
- 11-Recap- What You Have Learned And Homework.txt
- 12-Quiz.png
- 12-Quiz.txt
- 09-Bonus- Design School
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Layout.mp4
- 02-Discussion 1- Layout.png
- 02-Discussion 1- Layout.txt
- 03-Discussion 2- Colour.mp4
- 03-Discussion 2- Colour.png
- 03-Discussion 2- Colour.txt
- 04-Discussion 3- Typography.mp4
- 04-Discussion 3- Typography.png
- 04-Discussion 3- Typography.txt
- 05-Discussion 4- Iconography.mp4
- 05-Discussion 4- Iconography.png
- 05-Discussion 4- Iconography.txt
- 06-Recap And Homework.mp4
- 06-Recap And Homework.png
- 06-Recap And Homework.txt
- 07-Quiz.png
- 07-Quiz.txt
- 10. User Management
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Understanding Organisations And Users.mp4
- 02-Discussion 1- Understanding Organisations And Users.png
- 02-Discussion 1- Understanding Organisations And Users.txt
- 03-Practical 1- Building The User Admin UI.mp4
- 03-Practical 1- Building The User Admin UI.png
- 03-Practical 1- Building The User Admin UI.txt
- 04-Practical 2- The User Invite Flow.mp4
- 04-Practical 2- The User Invite Flow.png
- 04-Practical 2- The User Invite Flow.txt
- 05-Practical 3- The User Sign Up Flow.mp4
- 05-Practical 3- The User Sign Up Flow.png
- 05-Practical 3- The User Sign Up Flow.txt
- 06-Practical 4- Multi-Account Logic.mp4
- 06-Practical 4- Multi-Account Logic.png
- 06-Practical 4- Multi-Account Logic.txt
- 07-Practical 5- Switching Accounts.mp4
- 07-Practical 5- Switching Accounts.png
- 07-Practical 5- Switching Accounts.txt
- 08-Practical 6- Editing Users.mp4
- 08-Practical 6- Editing Users.png
- 09-Practical 7- Closing Accounts.mp4
- 09-Practical 7- Closing Accounts.png
- 09-Practical 7- Closing Accounts.txt
- 10-Recap And Homework.mp4
- 10-Recap And Homework.png
- 10-Recap And Homework.txt
- 11-Homework Solution.mp4
- 11-Homework Solution.png
- 11-Homework Solution.txt
- 12-Bug Fixes Part 1.mp4
- 12-Bug Fixes Part 1.png
- 12-Bug Fixes Part 1.txt
- 13-Bug Fixes Part 2.mp4
- 13-Bug Fixes Part 2.png
- 13-Bug Fixes Part 2.txt
- 14-Quiz.png
- 14-Quiz.txt
- 11-Building a Billing System
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- How SaaS Billing Works.mp4
- 02-Discussion 1- How SaaS Billing Works.png
- 02-Discussion 1- How SaaS Billing Works.txt
- 03-Discussion 2- Secure Customer Authentication.mp4
- 03-Discussion 2- Secure Customer Authentication.png
- 03-Discussion 2- Secure Customer Authentication.txt
- 04-Discussion 3- How Free Trials Work.mp4
- 04-Discussion 3- How Free Trials Work.png
- 04-Discussion 3- How Free Trials Work.txt
- 05-Practical 1- Setting Up Stripe.mp4
- 05-Practical 1- Setting Up Stripe.png
- 05-Practical 1- Setting Up Stripe.txt
- 06-Practical 2- Adding Subscription Plans.mp4
- 06-Practical 2- Adding Subscription Plans.png
- 06-Practical 2- Adding Subscription Plans.txt
- 07-Practical 3- Subscription Auth Checks.mp4
- 07-Practical 3- Subscription Auth Checks.png
- 07-Practical 3- Subscription Auth Checks.txt
- 08-Practical 4- Switching Plans.mp4
- 08-Practical 4- Switching Plans.png
- 08-Practical 4- Switching Plans.txt
- 09-Practical 5- Upgrade Flow.mp4
- 09-Practical 5- Upgrade Flow.png
- 09-Practical 5- Upgrade Flow.txt
- 10-Practical 6- Updating Credit Cards.mp4
- 10-Practical 6- Updating Credit Cards.png
- 10-Practical 6- Updating Credit Cards.txt
- 11-Practical 7- Subscription Webhook.mp4
- 11-Practical 7- Subscription Webhook.png
- 11-Practical 7- Subscription Webhook.txt
- 12-Bug Fixes.mp4
- 12-Bug Fixes.png
- 13-Recap And Homework.mp4
- 13-Recap And Homework.png
- 13-Recap And Homework.txt
- 14-Homework Solution.mp4
- 14-Homework Solution.png
- 15-Quiz.png
- 15-Quiz.txt
- 12-Profile Page & Photo Uploads
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- What We are Going To Build.mp4
- 02-Discussion 1- What We are Going To Build.png
- 02-Discussion 1- What We are Going To Build.txt
- 03-Practical 1- Building The Profile Page.mp4
- 03-Practical 1- Building The Profile Page.png
- 03-Practical 1- Building The Profile Page.txt
- 04-Practical 2- Uploading And Storing Photos.mp4
- 04-Practical 2- Uploading And Storing Photos.png
- 04-Practical 2- Uploading And Storing Photos.txt
- 05-Practical 3- Fetching Photos.mp4
- 05-Practical 3- Fetching Photos.png
- 05-Practical 3- Fetching Photos.txt
- 06-Practical 4- Photo Actions.mp4
- 06-Practical 4- Photo Actions.png
- 06-Practical 4- Photo Actions.txt
- 07-Practical 5- The Photo Detail Page.mp4
- 07-Practical 5- The Photo Detail Page.png
- 07-Practical 5- The Photo Detail Page.txt
- 08-Practical 6- User Avatars.mp4
- 08-Practical 6- User Avatars.png
- 08-Practical 6- User Avatars.txt
- 09-Recap And Homework.mp4
- 09-Recap And Homework.png
- 09-Recap And Homework.txt
- 10-Homework Solution.mp4
- 10-Homework Solution.png
- 11-Bug Fixes And Improvements.mp4
- 11-Bug Fixes And Improvements.png
- 12-Quiz.png
- 12-Quiz.txt
- 13-The Dashboard
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Practical 1- Building The Dashboard.mp4
- 02-Practical 1- Building The Dashboard.png
- 02-Practical 1- Building The Dashboard.txt
- 03-Practical 2- The API Keys UI.mp4
- 03-Practical 2- The API Keys UI.png
- 03-Practical 2- The API Keys UI.txt
- 04-Practical 3- The Help View.mp4
- 04-Practical 3- The Help View.png
- 04-Practical 3- The Help View.txt
- 05-Recap And Homework.mp4
- 05-Recap And Homework.png
- 05-Recap And Homework.txt
- 06-Homework Solution.mp4
- 06-Homework Solution.png
- 07-Bug Fixes.mp4
- 07-Bug Fixes.png
- 08-Quiz.png
- 08-Quiz.txt
- 14-Testing
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Why You Should Test.mp4
- 02-Discussion 1- Why You Should Test.png
- 02-Discussion 1- Why You Should Test.txt
- 03-Discussion 2- Types Of Tests.mp4
- 03-Discussion 2- Types Of Tests.png
- 03-Discussion 2- Types Of Tests.txt
- 04-Practical 1- Code Cleanup.mp4
- 04-Practical 1- Code Cleanup.png
- 04-Practical 1- Code Cleanup.txt
- 05-Practical 2- Writing Unit Tests.mp4
- 05-Practical 2- Writing Unit Tests.png
- 05-Practical 2- Writing Unit Tests.txt
- 06-Practical 3- Writing Integration Tests.mp4
- 06-Practical 3- Writing Integration Tests.png
- 06-Practical 3- Writing Integration Tests.txt
- 07-Practical 4- UI Testing-ui_test_checklist-220815-093123.numbers
- 07-Practical 4- UI Testing-ui_test_checklist-220815-093123.xlsx
- 07-Practical 4- UI Testing.mp4
- 07-Practical 4- UI Testing.png
- 07-Practical 4- UI Testing.txt
- 08-Bug Fixes.mp4
- 08-Bug Fixes.png
- 08-Bug Fixes.txt
- 09-Recap And Homework.mp4
- 09-Recap And Homework.png
- 09-Recap And Homework.txt
- 10-Homework Solution.mp4
- 10-Homework Solution.png
- 11-Quiz.png
- 11-Quiz.txt
- 15-Security
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Security Recap.mp4
- 02-Discussion 1- Security Recap.png
- 02-Discussion 1- Security Recap.txt
- 03-Discussion 2- XSS Attacks.mp4
- 03-Discussion 2- XSS Attacks.png
- 03-Discussion 2- XSS Attacks.txt
- 04-Practical 1- Keeping Packages Up To Date.mp4
- 04-Practical 1- Keeping Packages Up To Date.png
- 04-Practical 1- Keeping Packages Up To Date.txt
- 05-Practical 2- Content Security Policy.mp4
- 05-Practical 2- Content Security Policy.png
- 05-Practical 2- Content Security Policy.txt
- 06-Practical 3- CORS (Cross-Origin Resource Sharing).mp4
- 06-Practical 3- CORS (Cross-Origin Resource Sharing).png
- 06-Practical 3- CORS (Cross-Origin Resource Sharing).txt
- 07-Discussion 3- Database Security.mp4
- 07-Discussion 3- Database Security.png
- 07-Discussion 3- Database Security.txt
- 08-Recap And Homework.mp4
- 08-Recap And Homework.png
- 08-Recap And Homework.txt
- 09-Homework Solution.mp4
- 09-Homework Solution.png
- 10-Quiz.png
- 10-Quiz.txt
- 16-Deploying Your App
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion- Where To Host Your App.mp4
- 02-Discussion- Where To Host Your App.png
- 02-Discussion- Where To Host Your App.txt
- 03-Practical- Deploying to Heroku.mp4
- 03-Practical- Deploying to Heroku.png
- 03-Practical- Deploying to Heroku.txt
- 04-Recap And Homework.mp4
- 04-Recap And Homework.png
- 04-Recap And Homework.txt
- 17-Next Steps
- 01-Introduction.mp4
- 01-Introduction.png
- 01-Introduction.txt
- 02-Discussion 1- Additional SaaS Features.mp4
- 02-Discussion 1- Additional SaaS Features.png
- 02-Discussion 1- Additional SaaS Features.txt
- 03-Launching Your App & Getting Users-2-.png
- 03-Launching Your App & Getting Users-3-.png
- 03-Launching Your App & Getting Users-thesecretformulaforprofitablesaasideas-220829-143302.pdf
- 03-Launching Your App & Getting Users.png
- 03-Launching Your App & Getting Users.txt
- 03-Launching Your App And Getting Users.mp4
- 04-Recap.mp4
- 04-Recap.png
- 05-Feedback Survey.png
- 05-Feedback Survey.txt
