├── README.md ├── serverless-lang ├── .firebaserc ├── public │ ├── favicon_io.zip │ ├── favicon_io │ │ ├── favicon.ico │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── apple-touch-icon.png │ │ ├── android-chrome-192x192.png │ │ ├── android-chrome-512x512.png │ │ └── site.webmanifest │ └── index.html ├── firebase.json └── .gitignore └── LICENSE /README.md: -------------------------------------------------------------------------------- 1 | # Micro Web Sites 2 | This repo contains micro sites. -------------------------------------------------------------------------------- /serverless-lang/.firebaserc: -------------------------------------------------------------------------------- 1 | { 2 | "projects": { 3 | "default": "serverless-lang" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io.zip -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/favicon.ico -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/favicon-16x16.png -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/favicon-32x32.png -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/apple-touch-icon.png -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/android-chrome-192x192.png -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilhan-mstf/micro-sites/master/serverless-lang/public/favicon_io/android-chrome-512x512.png -------------------------------------------------------------------------------- /serverless-lang/public/favicon_io/site.webmanifest: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} -------------------------------------------------------------------------------- /serverless-lang/firebase.json: -------------------------------------------------------------------------------- 1 | { 2 | "hosting": { 3 | "public": "public", 4 | "ignore": [ 5 | "firebase.json", 6 | "**/.*", 7 | "**/node_modules/**" 8 | ], 9 | "rewrites": [ 10 | { 11 | "source": "**", 12 | "destination": "/index.html" 13 | } 14 | ] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Mustafa İlhan 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /serverless-lang/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | firebase-debug.log* 8 | 9 | # Firebase cache 10 | .firebase/ 11 | 12 | # Firebase config 13 | 14 | # Uncomment this if you'd like others to create their own Firebase project. 15 | # For a team working on the same Firebase project(s), it is recommended to leave 16 | # it commented so all members can deploy to the same project(s) in .firebaserc. 17 | # .firebaserc 18 | 19 | # Runtime data 20 | pids 21 | *.pid 22 | *.seed 23 | *.pid.lock 24 | 25 | # Directory for instrumented libs generated by jscoverage/JSCover 26 | lib-cov 27 | 28 | # Coverage directory used by tools like istanbul 29 | coverage 30 | 31 | # nyc test coverage 32 | .nyc_output 33 | 34 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 35 | .grunt 36 | 37 | # Bower dependency directory (https://bower.io/) 38 | bower_components 39 | 40 | # node-waf configuration 41 | .lock-wscript 42 | 43 | # Compiled binary addons (http://nodejs.org/api/addons.html) 44 | build/Release 45 | 46 | # Dependency directories 47 | node_modules/ 48 | 49 | # Optional npm cache directory 50 | .npm 51 | 52 | # Optional eslint cache 53 | .eslintcache 54 | 55 | # Optional REPL history 56 | .node_repl_history 57 | 58 | # Output of 'npm pack' 59 | *.tgz 60 | 61 | # Yarn Integrity file 62 | .yarn-integrity 63 | 64 | # dotenv environment variables file 65 | .env 66 | -------------------------------------------------------------------------------- /serverless-lang/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Serverless Languages 13 | 14 | 15 | 16 | 46 | 47 | 48 | 119 | 120 | 121 | 122 |
123 |

Serverless Architecture

124 |

Serverless architecture allows you to focus on the development of application without thinking about the details of the infrastructure. Therefore, it saves you time in the development of your application.

125 |

You develop your functions and handlers and then connect events to your handlers. That's it. This approach also called Function as a Service (Faas).

126 |

Serverless Infrastructure Providers

127 |

There are a couple of cloud providers that have serverless service. They are Amazon Web Services (AWS), Azure, Google Cloud, Firebase, Cloudflare, IBM Cloud and Alibaba Cloud. There are differences between them. This article focuses on the supported programming languages of these cloud providers.

128 |

Serverless Languages

129 |

In the chart, the left-hand side lists the available programming languages and the right-hand side lists the cloud providers. If there is a link between language and cloud provider, that means this language is supported by that cloud provider. As you can see that not all languages supported by every cloud provider except AWS and IBM cloud has a Runtime API or Docker that supports every language on top of that. Javascript is the only language supported by every cloud provider.

130 |
131 | 132 |
133 |
134 |
135 | 136 | 140 | 141 | --------------------------------------------------------------------------------