In this comprehensive course, you will learn how to build a fully functional e-commerce application from scratch using SwiftUI for the frontend, Node.js for the backend, and Postgres as the database. Whether you’re an iOS developer looking to expand your skill set into full-stack development or someone wanting to create a professional-level e-commerce app, this course will guide you through the entire process step-by-step.
You’ll start by setting up your development environment and designing the database schema for your e-commerce app. From there, you’ll dive into building the backend using Node.js and Postgres, where you’ll create user registration, login functionality, product management, and an order system. You’ll learn to secure your API using JWT-based authentication and ensure safe handling of user credentials.
On the frontend, you’ll build an iOS app using SwiftUI, where users can browse products, manage their carts, and place orders. You’ll also learn how to handle user authentication by connecting the frontend to the backend API, managing sessions, and securely storing tokens using Keychain.
You will also learn how to integrate your app with Stripe. This will allow you to collect payments for items sold.
By the end of the course, you’ll have developed a complete full-stack e-commerce app ready for deployment. You’ll also gain valuable skills in testing, debugging, and deploying your app to the cloud, with hands-on guidance on how to take your project live.
Key Topics:
- SwiftUI and MV architecture for building a modern iOS app
- Node.js and Express.js for developing JSON APIs
- Postgres database design and integration
- User authentication with JWT
- Secure token storage using Keychain
- Fetching and displaying product data
- Cart management and checkout process
- Stripe Integration
- Performance optimization
Enroll now and take the next step toward becoming a full-stack mobile app developer!
Course Video
Curriculum
- Creating User Table Using Sequelize (16:38)
- Registering User (11:06)
- Adding Unique Constraints to Username (7:29)
- Performing Validation Using express-validator (8:31)
- Catching Duplicate Username (8:33)
- Encrypting Sensitive Data (Passwords) (8:06)
- Implementing Authentication Controller Environment Key (8:36)
- Generic HTTPClient (5:13)
- Implementing Register for Authentication Controller (7:06)
- Developing Registration Screen in SwiftUI (16:24)
- Creating Product Table Using Sequelize CLI Tool and Migration (8:28)
- Adding Product Router and Product Controller (7:28)
- Implementing Get All Products (11:58)
- Displaying Products on Screen (20:10)
- Implementing Create Product Action on Product Controller (11:31)
- Adding Products Using SwiftUI App Part 1 (9:31)
- Adding Products Using SwiftUI App Part 2 (12:56)
- Implementing Get My Products on Product Controller (5:52)
- Displaying Products By User on Screen (9:20)
- Implementing Delete Route Using ExpressJS (9:53)
- Deleting Image Files Associated with the Product (11:05)
- Implementing MyProductCellView (4:03)
- Deleting Product from SwiftUI App (19:01)
- Implementing Update Route Using ExpressJS (16:19)
- Updating Product Using SwiftUI App Part 1 (13:11)
- Updating Product Using SwiftUI App Part 2 (17:28)
- Migration to Add Carts Table (12:00)
- Migration to Add CartItems Table (6:21)
- Adding Items to the Cart on Server Side Part 1 (6:05)
- Adding Items to the Cart on Server Side Part 2 (17:57)
- Implementing CartStore, Cart and CartItem Models in SwiftUI App (6:10)
- Implementing addCartToItem in CartStore (7:50)
- Adding Item to Cart from Product Detail Screen (11:59)
- Returning CartItem with Product to Client from the Server (8:48)
- Updating Add Item to Cart Function on Client Side (9:56)
- Loading Cart Data from the Server (12:11)
- Implementing loadCart in CartStore (11:00)
- Displaying Cart Items on the Screen Part 1 (8:13)
- Displaying Cart Items on the Screen Part 2 (13:05)
- Updating Cart Items Quantity (20:08)
- Deleting Cart Items (Server Side) (7:07)
- Deleting Cart Items (Client Side) (8:23)
- Adding Badge for Cart Items & Enable Cart Route Authentication (12:12)
Frequently Asked Questions
Who is this course for?
This course is ideal for iOS developers looking to expand into full-stack development, full-stack and backend developers wanting to build iOS apps using SwiftUI, and anyone interested in creating a professional-level e-commerce app. Whether you're a freelancer, entrepreneur, or student, you'll learn to integrate a Node.js backend with a SwiftUI frontend, handle authentication, and manage databases using Postgres. A basic understanding of Swift and JavaScript is helpful, but the course is designed to guide you through building a full-stack app from scratch.
What will you learn in this course?
In this course, you'll learn how to build a full-stack e-commerce app, using SwiftUI for the frontend and Node.js with Postgres for the backend. You'll design a relational database, create RESTful APIs with Node.js, and handle user authentication with JWT. On the frontend, you'll build a modern iOS app, integrate it with the backend, and securely manage user sessions with Keychain. You'll also cover key topics like product management, order processing, and performance optimization, giving you the skills to create and deploy a professional-level mobile app.
What is your refund policy?
Our 14-day refund policy ensures your satisfaction with your purchase. If you are not completely happy with your product or service, you have a two-week window to request a refund. This policy gives you peace of mind, allowing you to explore our offerings risk-free, and it reflects our commitment to providing you with a positive experience. We are here to assist you in any way possible to ensure your needs are met.
Courses You’ll Love
Mohammad Azam
Mohammad Azam is a highly experienced and accomplished developer with over a decade of professional experience in writing software. He has played an integral role in the success of several Fortune 500 companies including Valic, AIG, Dell, Baker Hughes, and Blinds.com, where he served as a lead mobile developer.
Azam's expertise has helped him become a top instructor on both Udemy and LinkedIn, with more than 100K students enrolled in his courses. He currently serves as a lead instructor at DigitalCrafts, a software bootcamp where he trains developers who now work at prestigious companies like Apple, JP Morgan Chase, and Exxon.
Azam is not only a developer and instructor but also an international speaker who has been sharing his knowledge and expertise since 2006. In his free time, he enjoys exercising and planning his next adventure to explore the unknown corners of the world.
What Our Students Say
I've been an iOS developer for years, but this course opened up a whole new world for me with backend development. The Node.js and Postgres sections were just what I needed to complete my skill set. I can now call myself a full-stack developer, and that feels amazing!
From the very first lesson, you can tell how much thought went into this course. The database design and API sections were detailed and easy to follow. By the time I got to the Stripe integration, I was blown away at how much I had learned. Can't recommend this enough!
I was skeptical at first because full-stack development seemed overwhelming, but this course made it so approachable. The JWT authentication and Keychain integration sections were a game-changer for me. I feel like I have a solid grasp of building secure apps now!
Single-Course License
$149
Full access to this course only
This is a one-time payment that grants access to this course only, not to any other courses.
Buy NowAzamSharp Pro Membership
$29 /Month
Unlimited access to this and all other current & future courses
This is a recurring payment, charged automatically on a monthly basis.
Become a Pro