Hands-On Full-Stack Development with Swift: Develop full-stack web and native mobile applications using Swift and Vapor
Build full-stack shopping list applications from scratch for web and mobile platforms using Xcode, Vapor, and Swift
- Build, package, and deploy an end-to-end app solution for mobile and web with Swift 4
- Increase developer productivity by creating reusable client and server components
- Develop backend services for your apps and websites using Vapor framework
Making Swift an open-source language enabled it to share code between a native app and a server. Building a scalable and secure server backend opens up new possibilities, such as building an entire application written in one language-Swift.
This book gives you a detailed walk-through of tasks such as developing a native shopping list app with Swift and creating a full-stack backend using Vapor (which serves as an API server for the mobile app). You'll also discover how to build a web server to support dynamic web pages in browsers, thereby creating a rich application experience.
You'll begin by planning and then building a native iOS app using Swift. Then, you'll get to grips with building web pages and creating web views of your native app using Vapor. To put things into perspective, you'll learn how to build an entire full-stack web application and an API server for your native mobile app, followed by learning how to deploy the app to the cloud, and add registration and authentication to it.
Once you get acquainted with creating applications, you'll build a tvOS version of the shopping list app and explore how easy is it to create an app for a different platform with maximum code shareability. Towards the end, you'll also learn how to create an entire app for different platforms in Swift, thus enhancing your productivity.
What you will learn
- Get accustomed to server-side programming as well as the Vapor framework
- Learn how to build a RESTful API
- Make network requests from your app and handle error states when a network request fails
- Deploy your app to Heroku using the CLI command
- Write a test for the Vapor backend
- Create a tvOS version of your shopping list app and explore code-sharing with an iOS platform
- Add registration and authentication so that users can have their own shopping lists
Who This Book Is For
Table of Contents
- Getting Started with Server Swift
- Creating the Native App
- Getting started with Vapor
- Configuring Providers, Fluent and Databases
- Building REST API using Vapor
- Consuming API in App
- Creating Web Views using Leaf
- Testing and CI
- Deploying the App
- Adding Authentication
- Building a Chat App