Full Stack Ios Development Using Swiftui And Vapor

Posted By: ELK1nG

Full Stack Ios Development Using Swiftui And Vapor
Published 5/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.28 GB | Duration: 11h 11m

Master Full Stack Development with SwiftUI, Vapor, and Postgres: Build Scalable Web Applications from Front to Back!

What you'll learn

Building User Interfaces with SwiftUI

Server-Side Swift Development with Vapor

Integrating Vapor with Postgres

Authentication and Authorization

Creating Custom Swift Packages to Share Models

Requirements

Basic programming knowledge: A fundamental understanding of programming concepts and syntax is beneficial. Familiarity with a programming language, preferably Swift, will be helpful in grasping the concepts covered in the course.

Swift knowledge: Some familiarity with the Swift programming language is recommended. Understanding Swift syntax, data types, variables, functions, and basic concepts will enable smoother comprehension of the course material.

macOS or iOS development environment: Since the course focuses on SwiftUI and Vapor, it is recommended to have access to a macOS or iOS development environment. This will allow you to practice and run the code examples provided in the course.

Xcode: Familiarity with Xcode, Apple's integrated development environment (IDE) for macOS and iOS development, is beneficial. Understanding how to navigate and work with Xcode will help you follow along with the course material effectively.

Description

Become a proficient full stack developer with our comprehensive Udemy course! Learn SwiftUI, Vapor, and Postgres to create robust, scalable, and secure web applications. Dive deep into SwiftUI for beautiful user interfaces, explore Vapor for server-side Swift development, and integrate it with Postgres for efficient data management. Master authentication, authorization, and deployment to the cloud. Gain practical experience through engaging projects and coding exercises. Enroll now to unlock your full stack development potential and join our vibrant learning community. Let's embark on this exciting journey together!What will students learn in this course?- Develop proficiency in full stack development using SwiftUI, Vapor, and Postgres.- Understand the powerful combination of SwiftUI, Vapor, and Postgres for building web applications.- Learn how to set up a backend server using Vapor and handle routing and HTTP requests.- Gain knowledge of Vapor's middleware for request processing and data manipulation.- Explore the integration of Vapor with Postgres for efficient storage and retrieval of data.- Implement robust authentication and authorization systems using JSON Web Tokens (JWT).- Securely manage user sessions, handle user registration and login processes.- Protect web applications from common security vulnerabilities.- Establish seamless communication between the front-end and back-end.- Deploy applications to the cloud, making them accessible to users worldwide.- Solidify understanding through engaging projects and coding exercises.- Access comprehensive resources, including downloadable project files and code samples.- Develop the confidence to tackle real-world challenges in full stack development.Who is this course for? - Aspiring full stack developers looking to enhance their skills and knowledge.- Individuals interested in creating robust, scalable, and secure web applications.- Swift developers seeking to expand their expertise to include server-side development.- Those interested in learning SwiftUI, Vapor, and Postgres for full stack development.- Programmers who want to build modern, beautiful user interfaces using SwiftUI.- Developers who want to explore Vapor as a server-side Swift framework.- Individuals interested in integrating Vapor with Postgres for efficient data management.- Those looking to gain hands-on experience in implementing authentication and authorization systems.- Developers aiming to deploy their applications to the cloud and make them globally accessible.- Learners who prefer a practical approach with engaging projects and coding exercises.- Individuals seeking valuable resources and references for future full stack development endeavors.Join our comprehensive Udemy course today and unlock your potential as a proficient full stack developer! Whether you're eager to create robust, scalable, and secure web applications or expand your Swift expertise, this course is designed to equip you with the necessary skills. Gain in-depth knowledge of SwiftUI, Vapor, and Postgres, and master the art of seamless communication between front-end and back-end. With practical projects, coding exercises, and comprehensive resources, you'll confidently tackle real-world challenges. Enroll now and become part of our vibrant learning community, ready to take your development skills to new heights. Let's embark on this exciting journey together!

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Credits

Lecture 3 Prerequisites

Lecture 4 Exercise Files

Lecture 5 Agenda

Section 2: Full Stack Development

Lecture 6 What is Full Stack Development?

Lecture 7 What is Vapor?

Lecture 8 Resources

Section 3: Getting Started with Vapor

Lecture 9 Installing Vapor

Lecture 10 Hello Vapor

Lecture 11 Folder Structure

Section 4: Routing

Lecture 12 Basic Routes and Route Parameters

Lecture 13 Strongly Typed Route Parameters

Lecture 14 Returning JSON

Lecture 15 POST Requests (JSON)

Lecture 16 Query Strings

Lecture 17 Route Groups

Section 5: Controllers

Lecture 18 Understanding MVC Design Pattern

Lecture 19 Creating Controllers

Section 6: Middleware

Lecture 20 What is a Middleware

Lecture 21 Creating a Basic Middleware

Lecture 22 Creating Middleware Extracting Tokens from Headers

Section 7: Quick Tour of Vapor with Postgres Database

Lecture 23 What is Fluent?

Lecture 24 Setting Up Postgres Database on ElephantSQL

Lecture 25 Adding Fluent Package

Lecture 26 Creating Movie Model

Lecture 27 Creating Tables Using Migration

Lecture 28 Saving Movie

Lecture 29 Get All Movies & Get Movie By Id

Lecture 30 Deleting Movie

Lecture 31 Updating Movie

Section 8: Grocery App - Project Setup

Lecture 32 What we will be building?

Lecture 33 Creating Vapor Project and SwiftUI Project

Lecture 34 Adding Dependencies to the Vapor Project

Lecture 35 Setting Up Postgres Database Locally

Lecture 36 Downloading Beekeeper Studio for Database Management

Lecture 37 Resource: Downloading Beekeeper Studio Community Edition

Lecture 38 Connecting Beekeeper Studio to Local Postgres Database

Section 9: Grocery App - User Registration (Server Side)

Lecture 39 Creating Users Table Through Migration

Lecture 40 Creating the User Model

Lecture 41 Implementing Register Route

Lecture 42 Testing User Registration Using Postman

Section 10: Grocery App - User Login (Server Side)

Lecture 43 Understanding JWT Authentication Flow

Lecture 44 Implementing Login Route

Lecture 45 Implementing Authentication Payload

Lecture 46 Creating and Returning the JWT Token

Lecture 47 Testing User Login Using Postman

Section 11: Grocery App - User Registration

Lecture 48 Implementing the Registration Screen

Lecture 49 Implementing Generic HTTPClient Part 1

Lecture 50 Implementing Generic HTTP Client Part 2

Lecture 51 FIX - Removing the HTTP Response Status Check

Lecture 52 Implementing the Aggregate Root GroceryModel

Lecture 53 Using GroceryModel from View to Register a New User

Lecture 54 FIX - Displaying Error Message on the Screen

Section 12: Grocery App - User Login

Lecture 55 Creating the Login Screen

Lecture 56 Implementing the Login in GroceryModel

Lecture 57 Adding Global Navigation

Lecture 58 Performing Programmatic Navigation

Section 13: Grocery App - Creating a Swift Package for Sharing DTOs

Lecture 59 Creating Grocery App Shared DTO Package

Lecture 60 Publishing the Grocery App Shared DTO Package to GitHub

Lecture 61 Adding GroceryAppSharedDTO Package to SwiftUI and Vapor Projects

Section 14: Grocery App - Saving Grocery Category (Server Side)

Lecture 62 Creating Grocery Category Table by Using Migration

Lecture 63 Implementing Grocery Category Model

Lecture 64 Setting Up Grocery Controller

Lecture 65 Implementing GroceryCategoryRequestDTO and GroceryCategoryResponseDTO

Lecture 66 Saving Grocery Category

Lecture 67 Testing Grocery Category Using Postman

Section 15: Grocery App - Saving Grocery Category (SwiftUI App/Client)

Lecture 68 Building the User Interface for Adding Grocery Category

Lecture 69 Implementing Save Grocery Category in GroceryModel

Lecture 70 Updating AddGroceryCategoryScreen to Use GroceryModel

Lecture 71 Adding Extension to UserDefaults to Easily Access UserId

Section 16: Grocery App - Fetching and Displaying Grocery Categories

Lecture 72 Fetching Grocery Categories by User (Server)

Lecture 73 Updating Grocery Model to Get Categories by User (Client)

Lecture 74 Displaying Grocery Categories

Lecture 75 Deleting Grocery Category (Server)

Lecture 76 Deleting Grocery Category (Client)

Lecture 77 Navigating to AddGroceryCategoryScreen from GroceryCategoryListScreen

Section 17: Grocery App - Saving Grocery Items (Server)

Lecture 78 Creating Grocery Items Table By Using Migration

Lecture 79 Implementing GroceryItem Model

Lecture 80 Saving Grocery Item - Part 1

Lecture 81 Saving Grocery Item - Part 2

Lecture 82 Testing Add Grocery Item Using Postman

Section 18: Grocery App - Saving and Displaying Grocery Items

Lecture 83 Implementing Grocery Detail Screen Container Screen

Lecture 84 Creating User Interface for AddGroceryItemScreen

Lecture 85 Updating GroceryModel to Support Adding Grocery Items

Lecture 86 Navigating to Grocery Detail Screen and Testing Saving Grocery Items

Section 19: Grocery App - Fetching and Displaying Grocery Items

Lecture 87 Fetching Grocery Items (Server)

Lecture 88 Display Grocery Items on the Screen

Lecture 89 Deleting Grocery Item (Server)

Lecture 90 Deleting Grocery Item (Client)

Section 20: Grocery App - Error Handling, Routing and Authentication Middleware

Lecture 91 Updating Screen Routing & Implementing Sign out

Lecture 92 Implementing ErrorWrapper and ErrorView

Lecture 93 Implementing Authentication Middleware

Lecture 94 IMPORTANT - Updating Client to Send Authentication Headers

Lecture 95 Presenting GroceryCategoryListScreen for Authenticated Users

Section 21: Grocery App - Deployment

Lecture 96 Resource: Vapor Heroku Deployment

Lecture 97 Setting Up Heroku Account & Installing Heroku CLI

Lecture 98 Adding Environment Variables

Lecture 99 Configure Procfile, Buildpack and Swift Version

Lecture 100 Setting Up Postgres Database and Running Migrations

Lecture 101 Updating the SwiftUI App

Section 22: Conclusion

Lecture 102 Next Steps

Lecture 103 Bonus Lecture

The course is suitable for beginners who are new to full stack development, as well as experienced developers looking to expand their skill set.,It specifically teaches the use of SwiftUI, Vapor, and Postgres.,The course covers setting up a backend server, handling routing and HTTP requests, and using Vapor's middleware for request processing and data manipulation.,It explores integrating Vapor with Postgres for efficient data storage and retrieval.,The course also covers implementing authentication and authorization systems using JSON Web Tokens (JWT).,Students will learn how to establish seamless communication between the front-end and back-end of an application.