09-20-2024, 11:17 AM
Building Full Stack Python Web Apps Backed By Google Sheets
Published 9/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.18 GB | Duration: 12h 1m
Develop and deploy a full-stack application using Python, Google Sheets, FastAPI, React, Next.js, and Tailwind CSS
[b]What you'll learn[/b]
Build a universal Python JSON API that connects to a virtually infinite number of Google Sheets
Gain terrific, hands-on practice building and deploying full stack Python applications
Enable authentication with JSON Web Tokens (JWT) and protect routes and operations
Build and deploy a modern user interface with React, Next JS, and Tailwind CSS
Practice using Google Sheets as application databases for Python APIs
Explore the Google Sheets and Drive APIs from the ground up in Python
[b]Requirements[/b]
A computer (Windows/Mac/Linux). That's all!
Some experience with python would be a plus, but is not required.
No prior experience with web development is required.
[b]Description[/b]
Welcome to the best resource online for learning full-stack Python web development with Google Sheets. This course offers a truly unique learning experience on Udemy. While there are hundreds of online Python courses to choose from, very few get you building real-world applications that have actual utility from the ground up. By the end of this course you will have deployed a universal Python web API that could connect to a virtually infinite number of workbooks. Functionally, this will be quite similar to several SAAS (software-as-a-service) businesses that you find on the web, services that offer JSON APIs on top of Google Sheets - obviously for a price. In this course, you will develop a Python application that does just that! Except we will write every line of code together and in the end deploy the application to the web for free! We are going to do this step-by-step, starting with the very basics of setting up service accounts to enable the sheets and drive APIs, then moving on to the implementation of operations like creating and managing worksheets, reading, writing, and appending data, automating common tasks, managing updates, and a lot more. The course features four in-depth sections that guide you from the basics of python all the way to writing and deploying fully functional modern APIs and user interfaces. In the first section you will:Uncover the power of Google Sheets as a flexible, cloud-based database alternativeUnderstand the details of authentication using service accountsSet up a professional development environment with virtual environmentsLearn to programmatically create, read, update, and delete Google Sheets through PythonDiscover the secret weapon of API developers: the Discovery DocumentThen, we'll dive head-first into python to:Craft a robust API using FastAPI, the most modern and lightweight Python web frameworkDesign elegant object-oriented abstractions for Google Sheets interactionsImplement industry-standard authentication with JSON Web Tokens (JWT)Master advanced data handling techniques for asymmetric and dynamic dataBuild a full CRUD (Create, Read, Update, Delete) API for Google SheetsDive deep into error handling and security best practicesLearn deployment strategies to take your API from local to globalFinally, we'll switch gears to user interface (UI) design and development. You will:Jumpstart your journey into the world of React and Next.jsDesign highly responsive, modern UIs with Tailwind CSSImplement authentication flows Build a functional e-commerce storefront from scratchMaster state management for complex user interactionsDeploy your polished web application to the worldAnd if you're new to python, don't worry! There is a full-length python primer included in the course that will get you up to speed in no time. This is included as an appendix to the course and covers all the basics of python programming. It is designed to be a quick reference for those who are new to python or need a refresher on the basics. By the end of this course, you will have: Built a production-ready API that interfaces with Google Sheets Mastered the full stack: from database to API to user interface Gained real-world experience in Python, FastAPI, React, and Next.js Developed and deployed a portfolio-worthy project to showcase your new skillsI'm excited to have you on board. Let's get started!
Overview
Section 1: Python vs Worksheets
Lecture 1 Welcome!
Lecture 2 My Other Work
Section 2: Introduction To The Google Sheets API
Lecture 3 High-Level Concepts
Lecture 4 Credentials And Service Account
Lecture 5 Virtual Environment And Dependencies
Lecture 6 Setting Up The Sheets Service
Lecture 7 Inserting Values Into Existing Sheet
Lecture 8 Programmatically Creating New Sheets
Lecture 9 Managing Permissions Through The Drive API
Lecture 10 The Discovery Document
Section 3: Building The Python API Layer
Lecture 11 Section Resources + All The Code Files
Lecture 12 Setup And Dependencies
Lecture 13 Scaffolding The API
Lecture 14 Defining A Sheets Abstraction
Lecture 15 Service Account Credentials
Lecture 16 Injecting Dependencies In FastAPI
Lecture 17 Creating A New Sheet
Lecture 18 Permissioning A Specific User Or Anyone
Lecture 19 Pydantic Models
Lecture 20 Swagger UI API Documentation
Lecture 21 API Routers
Lecture 22 Rename Spreadsheet Operation
Lecture 23 Adding The Route Handler
Lecture 24 Deleting Spreadsheets
Lecture 25 Extra: Centralizing Exception Handling
Lecture 26 The Worksheets API Router
Lecture 27 Navigating Between Sheet Names And Ids
Lecture 28 Renaming A Worksheet
Lecture 29 Reading Worksheet Data And Returning JSON
Lecture 30 Writing Data To A Worksheet
Lecture 31 Handling Rows With Asymmetric Dimensions
Lecture 32 Appending Records With New Dimensions
Lecture 33 Handling Multiple New Columns Correctly
Lecture 34 Implementing Auto-Incrementing Ids
Lecture 35 Adding New Worksheets
Lecture 36 Clearing All Worksheet Content
Lecture 37 Deleting A Worksheet
Lecture 38 Introducing Environment Variables
Lecture 39 Creating Expirable JSON Web Tokens
Lecture 40 Implementing The /token Endpoint
Lecture 41 Adding Some Missing Dependencies
Lecture 42 Authentication And JWTs
Lecture 43 Defining An Auth Dependency
Lecture 44 Protecting Routes With Token-Based Authentication
Lecture 45 Finishing Touches
Lecture 46 Relaxing The CORS Policy
Lecture 47 Deployment Checklist
Lecture 48 Locking Dependencies And Config
Lecture 49 Git And .gitignore
Lecture 50 GitHub Remote Repository
Lecture 51 Deploying To The World Wide Web
Section 4: Creating User Interfaces With React And Next.js
Lecture 52 Section Resources + All The Code Files
Lecture 53 The Big Picture
Lecture 54 JavaScript, Node, React, And Next.js
Lecture 55 Setting Up A New Project
Lecture 56 Running The App
Lecture 57 Our First Component
Lecture 58 Controlling Components With JavaScript
Lecture 59 Styling Interfaces With Tailwind CSS
Lecture 60 Obtaining the JWT From The Backend
Lecture 61 Adding Interactivity To The Form
Lecture 62 Next.js Environment Variables
Lecture 63 Client-side Accessible Env Variables
Lecture 64 Conditionally Rendering On Successful Login
Lecture 65 Passing Down Props To Other Components
Lecture 66 Creating A New Workbook For Our Online Store
Lecture 67 Seeding Our Inventory
Lecture 68 Fetching Inventory Data Via The API
Lecture 69 Rendering Products
Lecture 70 Styling The Products Grid
Lecture 71 Defining A New ProductCard Component
Lecture 72 AddToCart Functionality
Lecture 73 Header With View Cart Button
Lecture 74 Opening And Closing The Cart
Lecture 75 Cart Container
Lecture 76 Displaying Items In The Cart
Lecture 77 Removing Items From The Cart
Lecture 78 Unique Cart Item Ids
Lecture 79 Calculating And Rendering TotalAmount
Lecture 80 Introducing A Checkout Button
Lecture 81 Creating The Orders Worksheet
Lecture 82 HandleCheckout From The UI
Lecture 83 Generating Unique Order Ids
Lecture 84 Updating Cart State On Order Checkout
Lecture 85 Persisting The Authentication Token
Lecture 86 Deploying The User Interface
Lecture 87 Deployed App
Lecture 88 Thank You!
Section 5: Appendix - Python Fundamentals
Lecture 89 A Quick Note + Section Resources
Lecture 90 Data Type
Lecture 91 Variables
Lecture 92 Arithmetic And Augmented Assignment Operators
Lecture 93 Ints And Floats
Lecture 94 Booleans And Comparison Operators
Lecture 95 Strings
Lecture 96 Methods
Lecture 97 Containers I: Lists
Lecture 98 Lists vs. Strings
Lecture 99 List Methods And Functions
Lecture 100 Containers II: Tuples
Lecture 101 Containers III: Sets
Lecture 102 Containers IV: Dictionaries
Lecture 103 Dictionary Keys And Values
Lecture 104 Membership Operators
Lecture 105 Controlling Flow: if, else, And elif
Lecture 106 Truth Value Of Non-booleans
Lecture 107 For Loops
Lecture 108 The range() Immutable Sequence
Lecture 109 While Loops
Lecture 110 Break And Continue
Lecture 111 Zipping Iterables
Lecture 112 List Comprehensions
Lecture 113 Defining Functions
Lecture 114 Function Arguments: Positional vs Keyword
Lecture 115 Lambdas
Lecture 116 Importing Modules
Enthusiastic beginners or developers looking to build full-stack Python applications backed by Google Sheets
[b]What you'll learn[/b]
Build a universal Python JSON API that connects to a virtually infinite number of Google Sheets
Gain terrific, hands-on practice building and deploying full stack Python applications
Enable authentication with JSON Web Tokens (JWT) and protect routes and operations
Build and deploy a modern user interface with React, Next JS, and Tailwind CSS
Practice using Google Sheets as application databases for Python APIs
Explore the Google Sheets and Drive APIs from the ground up in Python
[b]Requirements[/b]
A computer (Windows/Mac/Linux). That's all!
Some experience with python would be a plus, but is not required.
No prior experience with web development is required.
[b]Description[/b]
Welcome to the best resource online for learning full-stack Python web development with Google Sheets. This course offers a truly unique learning experience on Udemy. While there are hundreds of online Python courses to choose from, very few get you building real-world applications that have actual utility from the ground up. By the end of this course you will have deployed a universal Python web API that could connect to a virtually infinite number of workbooks. Functionally, this will be quite similar to several SAAS (software-as-a-service) businesses that you find on the web, services that offer JSON APIs on top of Google Sheets - obviously for a price. In this course, you will develop a Python application that does just that! Except we will write every line of code together and in the end deploy the application to the web for free! We are going to do this step-by-step, starting with the very basics of setting up service accounts to enable the sheets and drive APIs, then moving on to the implementation of operations like creating and managing worksheets, reading, writing, and appending data, automating common tasks, managing updates, and a lot more. The course features four in-depth sections that guide you from the basics of python all the way to writing and deploying fully functional modern APIs and user interfaces. In the first section you will:Uncover the power of Google Sheets as a flexible, cloud-based database alternativeUnderstand the details of authentication using service accountsSet up a professional development environment with virtual environmentsLearn to programmatically create, read, update, and delete Google Sheets through PythonDiscover the secret weapon of API developers: the Discovery DocumentThen, we'll dive head-first into python to:Craft a robust API using FastAPI, the most modern and lightweight Python web frameworkDesign elegant object-oriented abstractions for Google Sheets interactionsImplement industry-standard authentication with JSON Web Tokens (JWT)Master advanced data handling techniques for asymmetric and dynamic dataBuild a full CRUD (Create, Read, Update, Delete) API for Google SheetsDive deep into error handling and security best practicesLearn deployment strategies to take your API from local to globalFinally, we'll switch gears to user interface (UI) design and development. You will:Jumpstart your journey into the world of React and Next.jsDesign highly responsive, modern UIs with Tailwind CSSImplement authentication flows Build a functional e-commerce storefront from scratchMaster state management for complex user interactionsDeploy your polished web application to the worldAnd if you're new to python, don't worry! There is a full-length python primer included in the course that will get you up to speed in no time. This is included as an appendix to the course and covers all the basics of python programming. It is designed to be a quick reference for those who are new to python or need a refresher on the basics. By the end of this course, you will have: Built a production-ready API that interfaces with Google Sheets Mastered the full stack: from database to API to user interface Gained real-world experience in Python, FastAPI, React, and Next.js Developed and deployed a portfolio-worthy project to showcase your new skillsI'm excited to have you on board. Let's get started!
Overview
Section 1: Python vs Worksheets
Lecture 1 Welcome!
Lecture 2 My Other Work
Section 2: Introduction To The Google Sheets API
Lecture 3 High-Level Concepts
Lecture 4 Credentials And Service Account
Lecture 5 Virtual Environment And Dependencies
Lecture 6 Setting Up The Sheets Service
Lecture 7 Inserting Values Into Existing Sheet
Lecture 8 Programmatically Creating New Sheets
Lecture 9 Managing Permissions Through The Drive API
Lecture 10 The Discovery Document
Section 3: Building The Python API Layer
Lecture 11 Section Resources + All The Code Files
Lecture 12 Setup And Dependencies
Lecture 13 Scaffolding The API
Lecture 14 Defining A Sheets Abstraction
Lecture 15 Service Account Credentials
Lecture 16 Injecting Dependencies In FastAPI
Lecture 17 Creating A New Sheet
Lecture 18 Permissioning A Specific User Or Anyone
Lecture 19 Pydantic Models
Lecture 20 Swagger UI API Documentation
Lecture 21 API Routers
Lecture 22 Rename Spreadsheet Operation
Lecture 23 Adding The Route Handler
Lecture 24 Deleting Spreadsheets
Lecture 25 Extra: Centralizing Exception Handling
Lecture 26 The Worksheets API Router
Lecture 27 Navigating Between Sheet Names And Ids
Lecture 28 Renaming A Worksheet
Lecture 29 Reading Worksheet Data And Returning JSON
Lecture 30 Writing Data To A Worksheet
Lecture 31 Handling Rows With Asymmetric Dimensions
Lecture 32 Appending Records With New Dimensions
Lecture 33 Handling Multiple New Columns Correctly
Lecture 34 Implementing Auto-Incrementing Ids
Lecture 35 Adding New Worksheets
Lecture 36 Clearing All Worksheet Content
Lecture 37 Deleting A Worksheet
Lecture 38 Introducing Environment Variables
Lecture 39 Creating Expirable JSON Web Tokens
Lecture 40 Implementing The /token Endpoint
Lecture 41 Adding Some Missing Dependencies
Lecture 42 Authentication And JWTs
Lecture 43 Defining An Auth Dependency
Lecture 44 Protecting Routes With Token-Based Authentication
Lecture 45 Finishing Touches
Lecture 46 Relaxing The CORS Policy
Lecture 47 Deployment Checklist
Lecture 48 Locking Dependencies And Config
Lecture 49 Git And .gitignore
Lecture 50 GitHub Remote Repository
Lecture 51 Deploying To The World Wide Web
Section 4: Creating User Interfaces With React And Next.js
Lecture 52 Section Resources + All The Code Files
Lecture 53 The Big Picture
Lecture 54 JavaScript, Node, React, And Next.js
Lecture 55 Setting Up A New Project
Lecture 56 Running The App
Lecture 57 Our First Component
Lecture 58 Controlling Components With JavaScript
Lecture 59 Styling Interfaces With Tailwind CSS
Lecture 60 Obtaining the JWT From The Backend
Lecture 61 Adding Interactivity To The Form
Lecture 62 Next.js Environment Variables
Lecture 63 Client-side Accessible Env Variables
Lecture 64 Conditionally Rendering On Successful Login
Lecture 65 Passing Down Props To Other Components
Lecture 66 Creating A New Workbook For Our Online Store
Lecture 67 Seeding Our Inventory
Lecture 68 Fetching Inventory Data Via The API
Lecture 69 Rendering Products
Lecture 70 Styling The Products Grid
Lecture 71 Defining A New ProductCard Component
Lecture 72 AddToCart Functionality
Lecture 73 Header With View Cart Button
Lecture 74 Opening And Closing The Cart
Lecture 75 Cart Container
Lecture 76 Displaying Items In The Cart
Lecture 77 Removing Items From The Cart
Lecture 78 Unique Cart Item Ids
Lecture 79 Calculating And Rendering TotalAmount
Lecture 80 Introducing A Checkout Button
Lecture 81 Creating The Orders Worksheet
Lecture 82 HandleCheckout From The UI
Lecture 83 Generating Unique Order Ids
Lecture 84 Updating Cart State On Order Checkout
Lecture 85 Persisting The Authentication Token
Lecture 86 Deploying The User Interface
Lecture 87 Deployed App
Lecture 88 Thank You!
Section 5: Appendix - Python Fundamentals
Lecture 89 A Quick Note + Section Resources
Lecture 90 Data Type
Lecture 91 Variables
Lecture 92 Arithmetic And Augmented Assignment Operators
Lecture 93 Ints And Floats
Lecture 94 Booleans And Comparison Operators
Lecture 95 Strings
Lecture 96 Methods
Lecture 97 Containers I: Lists
Lecture 98 Lists vs. Strings
Lecture 99 List Methods And Functions
Lecture 100 Containers II: Tuples
Lecture 101 Containers III: Sets
Lecture 102 Containers IV: Dictionaries
Lecture 103 Dictionary Keys And Values
Lecture 104 Membership Operators
Lecture 105 Controlling Flow: if, else, And elif
Lecture 106 Truth Value Of Non-booleans
Lecture 107 For Loops
Lecture 108 The range() Immutable Sequence
Lecture 109 While Loops
Lecture 110 Break And Continue
Lecture 111 Zipping Iterables
Lecture 112 List Comprehensions
Lecture 113 Defining Functions
Lecture 114 Function Arguments: Positional vs Keyword
Lecture 115 Lambdas
Lecture 116 Importing Modules
Enthusiastic beginners or developers looking to build full-stack Python applications backed by Google Sheets