
Download and use the section exercise files, including client, server, and shared swift package, to follow along with the grocery project or its final exercise.
Master full stack iOS development by building client side UI with swiftui and server side APIs with vapor, incrementally implementing login and registration to reveal real-world design decisions.
Explore Vapor as a high-performance Swift web framework for building web apps and APIs, offering routing, middleware, an MVC pattern, databases, authentication, session management, and async/await.
Learn to scaffold a vapor project with viper toolbox and vapor new, install dependencies in Xcode, run the server on port 3000, configure scheme to run from the project directory.
Learn about Vapor's updated folder structure, where all files live in the app folder, main.swift becomes entry point, and the run folder is removed, simplifying project setup.
Learn to access strongly typed route parameters in Vapor by treating the customer ID as an integer, validating input with guard, and returning a bad request on non numeric values.
Create a post route in Vapor to receive JSON payloads, decode them into a movie model, and return the same movie as JSON.
Use route groups with app.grouped to create prefix-based collections like movies and users, handle route parameters, and build scalable, nested routes for large Vapor apps.
Explore mvc design pattern by examining model, view, and controller; the model defines data shape with properties like name, age, breed, weight, height, and the controller returns data or views.
Create a simple log middleware in Vapor using async middleware, log requests to the console, and forward the request with next.respond, registered to run for every route.
Postgres App
Beekeeper Community Edition
2. Create the database:
CREATE DATABASE mydatabase;
CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;
Exit the PostgreSQL prompt:
\q
Learn to set up a Postgres database on Elephant SQL and connect it to a Vapor app to return JSON, using the free tiny turtle plan.
Fetch all movies with a get route and retrieve a single movie by id using the find function, root parameters, and async/await, with error handling for missing entries.
Delete a movie in vapor using the delete http method at movies/:id. Find the movie by ID, delete it, and return the deleted record, validating with Postman.
Build a grocery app with registration and login using JWT, a Vapor server on Heroku, and SwiftUI client managing categories and items from Postgres with DTOs via Swift Package Manager.
Create a vapor server folder and a swift application project using a barebones template, name the grocery app server and grocery app, then plan to add fluent and jwt dependencies.
Add required dependencies to the vapor project, including fluent, fluent postgresql driver, and JWT, configure targets, and prepare the project for authentication and a local Postgres database.
Visualize and query relational databases with Beekeeper Studio. Download the community edition for arm64 mac, install via DMG or AppImage, and connect to a local Postgres database.
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!