Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Complete Vapor 3 Course
Rating: 4.3 out of 5(20 ratings)
107 students

Complete Vapor 3 Course

Build custom backend for your iOS app
Created byApoorv Mote
Last updated 10/2018
English
English [Auto],

What you'll learn

  • Be able to build custom backend for iOS app and build web app.

Course content

4 sections38 lectures9h 34m total length
  • Intro to Vapor11:26

    Learn to build a backend with Vapor, a Swift server-side framework, using a non-blocking architecture and REST concepts such as get, post, put, and delete.

  • Create Routes9:41

    Create routes in Vapor 3 by building get and post endpoints, testing hello world responses, and handling JSON user info with decoding and encoding.

  • Fluent19:49

    Learn how fluent orm in vapor connects Swift to databases, create a work model, handle migrations, expose a rest endpoint, and deploy to Vapor Cloud.

  • Configure Database25:06

    Explore configuring relational and non-relational databases in Vapor 3, set up SQLite for quick tests, switch to MySQL or PostgreSQL with Docker, run migrations, and prepare for cloud deployment.

  • Create16:36

    Automate the creation of a database entry in Vapor by building and testing a post request, configuring Docker containers, and refactoring code for reusable API tests.

  • Retrieve25:10

    Learn to retrieve records from a Vapor 3 application programming interface by wiping the database, posting sample items, and fetching all items or a single item via get requests.

  • Update11:12

    Learn to update a database object in a Vapor 3 app using PostgreSQL, REST, decoding requests, and flatMap to coordinate read and update operations.

  • Delete7:20

    Learn how to delete a database object in Vapor 3 by issuing a delete request, handling future results, and validating the operation with automated tests.

  • Query27:53

    Learn how to build and query a Vapor 3 API to manage work items: fetch, filter by project name or progress, support case-insensitive searches, and sort or limit results.

  • Controller21:07

    Learn to organize vapor apps with controllers and register them to the router. Implement CRUD operations for work and employee models using grouped API routes and tests to validate behavior.

  • Parent Children Relationship30:05

    learn to implement a one-to-many relationship between work and employee in Vapor 3, including adding an employee id, parent-child extensions, and fetching related data with migrations and tests.

  • Sibling Relationship22:04

    Learn to implement a many-to-many relationship between work and category in Vapor, using a bridge model, migrations, and api endpoints to create, fetch, and delete relationships with foreign key constraints.

  • Code Update6:48

    Update your Vapor 3 project by refining the many-to-many relationship, adding cascade deletes, switching to fluent commands, migrating, rebooting the Postgres database, and running tests.

Requirements

  • Be good at Swift and HTML language. Be familiar with CSS & Javascript.
  • Have access to Mac computer with X Code 9.4.1 installed.

Description

In this course I am going to teach you how to build basic API with Vapor. Starting with setting up routes/URLs and database. Then doing basic CRUD operations. Then Relationships like parent child and sibling relationships. We are going to automatically test all of these code with unit tests.

Then we are going to build iOS app to make use of the API that we built.

After that we are going to build a web app using Leaf templates. Leaf allows us to create templates that we can embed into another template. This avoid duplicate entries. For example create header and footer once and embed them into all pages. So to update header you only update at single place. Then it will be updated on all places.

Then we are going to do authentication on iOS app and Web App.


Who this course is for:

  • iOS developers who want to build custom backend for their iOS apps. And who wants to build web app.