Kyle Gawley – How To Build a SaaS Product (PRO)

Online course: Kyle Gawley – How To Build a SaaS Product (PRO)


 

What You Get:

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 modelling tools
  • Designing data models
  • Normalisation, 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 customise 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 out flow

Bonus: UI Design School

  • Layout
  • Colour
  • Scale
  • Typography
  • Iconography

User Management

  • Understanding organisations and users
  • Building a user admin UI
  • Building a user invite flow
  • The user sign up flow
  • Multi-organisation logic

Build a SaaS Billing System With Stripe

  • Creating the billing UI
  • Upgrading, downgrading & cancelling
  • 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 help 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


Sales Page in PDF (opens in a new tab)

PROOF