{"id":18078428,"url":"https://github.com/techgaun/intro-to-serverless","last_synced_at":"2025-04-05T20:40:48.776Z","repository":{"id":147048700,"uuid":"255517318","full_name":"techgaun/intro-to-serverless","owner":"techgaun","description":"An introduction to Serverless Framework","archived":false,"fork":false,"pushed_at":"2020-04-14T17:57:12.000Z","size":23,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-11T21:51:40.535Z","etag":null,"topics":["architecture","aws","awslambda","cloud-functions","hacktoberfest","infrastructure","lambda","serverless","serverless-framework"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/techgaun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-14T05:22:00.000Z","updated_at":"2022-08-03T08:54:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"cc537b0f-b066-421a-96c9-8464e3554e21","html_url":"https://github.com/techgaun/intro-to-serverless","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techgaun%2Fintro-to-serverless","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techgaun%2Fintro-to-serverless/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techgaun%2Fintro-to-serverless/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techgaun%2Fintro-to-serverless/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/techgaun","download_url":"https://codeload.github.com/techgaun/intro-to-serverless/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247399898,"owners_count":20932876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture","aws","awslambda","cloud-functions","hacktoberfest","infrastructure","lambda","serverless","serverless-framework"],"created_at":"2024-10-31T12:13:59.800Z","updated_at":"2025-04-05T20:40:48.747Z","avatar_url":"https://github.com/techgaun.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"%title: Introduction to Serverless Framework\n%author: techgaun\n%date: 2020-04-12\n\n# intro-to-serverless\n\u003e An introduction to Serverless Framework\n\n## Agenda\n\n- Introduction to Serverless Architecture\n- Introduction to Open-Source Serverless Framework\n  - Quickstart\n  - Language Support\n  - Services\n  - Extending Serverless Framework with [plugins](https://github.com/serverless/plugins)\n  - [Serverless Framework Components](https://github.com/serverless-components)\n- Build a Live Demo\n- Use Cases\n- Key concepts and taking from dev to production\n- Challenges of Serverless Architecture\n- Discussions/Wrap-up/Stories\n\n-------------------------------------------------\n\n### Introduction to Serverless Architecture\n\n- Microservice-y architecture for which you don't have to manage the infrastructure\n- Infrastructure often abstracted away into simple configuration by Cloud Providers (AWS Lambda, Azure functions, Google CloudFunctions, etc.) or your in-house infrastructure team (With deployment of Apache OpenWhisk, Kubeless, Fission, etc.)\n- Lowers the total cost of maintaining your apps, enabling you to build more logic, faster\n- Serverless compute services are essentially ephemeral containers. No need to worry about things such as CPU, memory, disk, OS/app updates, n/w configs, container configs, k8s, and plethoras of such things...\n\n-------------------------------------------------\n\n### Introduction to Open-Source Serverless Framework\n\n- MIT open-source project, actively maintained by a full-time, venture-backed team, started in 2015\n- Infrastructure as Code for various managed services necessary to get up and running with serverless architecture\n- Supports Node.js, Python, Java, Go, C#, Ruby, Swift, Kotlin, PHP, Scala, \u0026 F#\n- Manages the lifecycle of your serverless architecture (build, deploy, update, delete)\n- Safely deploy functions, events and their required resources together via provider resource managers (e.g., AWS CloudFormation).\n- Infrastructure abstraction sounds nice in theory, in practice, managing layers on top of that abstraction in a simple and unified way becomes fragile and so comes serverless framework for the rescue.\n- Easy scaffolding, built-in support for stages, functions group (aka serverless services), easy to build CI/CD workflows and extensible via plugin system. Finally a big community\n\n-------------------------------------------------\n\n#### Quickstart\n\n- `npm install -g serverless` or `curl -o- -L https://slss.io/install | bash`\n- `serverless` or `sls` for running serverless\n- `sls create -t aws-nodejs -p \u003capp_name\u003e`\n- serverless.yml for configuration\n\n-------------------------------------------------\n\n#### Language Support\n\n- Depends on what is supported by the runtime of the service\n- AWS Lambda integration is probably by far the most feature complete and mature on serverless framework\n\n-------------------------------------------------\n\n#### Services\n\n- `sls install --url \u003cservice-github-url\u003e`\n- provides a mechanism to build and re-use scaffolding/templates\n- [examples](https://github.com/serverless/examples) and much more\n\n-------------------------------------------------\n\n#### Extending Serverless Framework with [plugins](https://github.com/serverless/plugins)\n\n- allows users to extend or overwrite the framework's core functionality\n- plugins are basically javascript code\n- power of serverless lies a lot in the rich plugin ecosystem and extensibility\n- install (via npm/yarn) and specify plugins you like to use on serverless.yml in plugins sections\n- [plugins dive](https://serverless.com/framework/docs/providers/aws/guide/plugins/)\n- [How to create serverless plugins - Part 1](https://serverless.com/blog/writing-serverless-plugins/)\n\n-------------------------------------------------\n\n#### [Serverless Framework Components](https://github.com/serverless-components)\n\n- [abstractions](https://github.com/serverless/components) to deploy serverless applications using serverless framework\n- allows complex but common use-cases to be built out and made available via serverless registry\n- just got out of beta recently\n\n-------------------------------------------------\n\n### Build a Live Demo\n\n- From scratch\n- Using template\n- Using service\n\n-------------------------------------------------\n\n### Use Cases\n\n- Auto-scaling Websites and APIs\n- Image and Video (\u0026 General Files/Multimedia) Manipulation\n- Event Processing\n- Multi-language and Multi-cloud applications\n- Complex shared client-side logic encapsulation\n- [Case Studies](https://serverless.com/learn/case-studies/)\n\n-------------------------------------------------\n\n### Key concepts and taking from dev to production\n\n- API Gateway\n- Stages\n- IAM\n- Logging\n\n-------------------------------------------------\n\n### Challenges of Serverless Architecture\n\n- Lack of operational tools (monitoring, debugging, observability)\n- Architectural and Testing complexity\n- Vendor lock-in\n- Security Management\n- General startup latency (cold boot time)\n\n-------------------------------------------------\n\n### Discussions/Wrap-up/Stories\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechgaun%2Fintro-to-serverless","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechgaun%2Fintro-to-serverless","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechgaun%2Fintro-to-serverless/lists"}