Skip to content

below/SwiftAWSLamdaRESTAPI

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swift Todo REST API with AWS Lambda

Alt text

Source code for Tutorial on building a Swift REST API to perform CRUD operations for Todo Items, learn how to persist data to AWS DynamoDB using AWS Swift SDK, handle events using Swift AWS Lambda Runtime library, and deploy to AWS Lambda using Serverless framework.

Tutorial Video

Youtube link at https://youtu.be/HHg3fVfpj6M

Backend App Requirement

Getting Started - Backend

  • Copy and Clone the project
  • Create the container using Dockerfile
  • Build the project in release mode using the docker container
  • Run the script inside scripts/package.sh to package the app into Lambda.zip inside the build folder
  • Update the serverless by providing your own unique service, dynamo db table
  • Deploy using sls -v deploy

Backend Endpoints

  • List Todos: /todos (GET)
  • Read Todo: /todos/{id} (GET)
// Response JSON Body
{
"id": "String",
"name": "String",
"isCompleted": "Boolean",
"dueDate": "ISO8601 formatted String",
"createdAt": "ISO8601 formatted String",
"updatedAt": "ISO8601 formatted String"
}
  • Create Todo: /todos (POST)
// Request JSON Body
{
"id": "String",
"name": "String",
"isCompleted": "Boolean",
"dueDate": "ISO8601 formatted String"
}
  • Update Todo: /todos/{id} (PUT)
// Request JSON Body
{
"name": "String",
"isCompleted": "Boolean",
"dueDate": "ISO8601 formatted String"
}
  • Delete Todo: /todos/{id} (DELETE)

Front end App Requirement

  • Xcode 12

Getting Started - Frontend

  • Paste the endpoint url from backend deployment into TodoProvider.swift

About

Swift Todo REST API with AWS Lambda & DynamoDB

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 97.8%
  • Shell 1.4%
  • Dockerfile 0.8%