diff --git a/README.md b/README.md index 12df402ce..82741031b 100644 --- a/README.md +++ b/README.md @@ -6,26 +6,28 @@ Fn is an event-driven, open source, [functions-as-a-service](docs/serverless.md) compute platform that you can run anywhere. Some of it's key features: -* Write once - * [Any language](docs/faq.md#which-languages-are-supported) - * [AWS Lambda format supported](docs/lambda/README.md) -* [Run anywhere](docs/faq.md#where-can-i-run-functions) +* Open Source +* Native Docker: use any Docker container as your Function +* Supports all languages even AWS [Lambda format](docs/lambda/README.md) +* Run anywhere * Public, private and hybrid cloud * [Import functions directly from Lambda](docs/lambda/import.md) and run them wherever you want -* Easy to use [for developers](docs/README.md#for-developers) -* Easy to manage [for operators](docs/README.md#for-operators) -* Written in [Go](https://golang.org) +* Easy to use for developers +* Easy to manage for operators +* Written in Go * Simple yet powerful extensibility +The fastest way to experience Fn is to follow the quickstart below, or you can jump right to our [full documentation](docs/README.md), [API Docs](http://petstore.swagger.io/?url=https://raw.githubusercontent.com/fnproject/fn/master/docs/swagger.yml), or his us up in our [Slack Community](http://slack.fnproject.io)! -## Prequisites + +## Quickstart + +### Pre-requisites * Docker 17.05 or later installed and running * A Docker Hub account ([Docker Hub](https://hub.docker.com/)) (or other Docker-compliant registry) * Log Docker into your Docker Hub account: `docker login` -## Quickstart - ### Install CLI tool The command line tool isn't required, but it sure makes things a lot easier. There are a few options to install it: @@ -130,7 +132,8 @@ For more information, see: [https://github.com/fnproject/ui](https://github.com/ ## Learn More -* Visit our Functions [Tutorial Series](examples/tutorial/). This tutorial will demonstrate some of the core Fn capabilities through a series of examples. We'll try to show examples in most major languages. This is a great Fn place to start! +* With our [Fn Getting Started Series](examples/tutorial/), quickly create Fn Hello World applications in multiple languages. This is a great Fn place to start! +* Visit [Fn tutorials](https://github.com/fnproject/tutorials) for step by step guides to creating apps with Fn . These tutorials range from introductory to more advanced. * See our [full documentation](docs/README.md) * View all of our [examples](/examples) * View our [YouTube Channel](https://www.youtube.com/channel/UCo3fJqEGRx9PW_ODXk3b1nw) diff --git a/docs/README.md b/docs/README.md index 9c9466ad0..4b2b0f700 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4,39 +4,51 @@ If you are a developer using Fn through the API, this section is for you. +### Getting Started * [Quickstart](https://github.com/fnproject/fn) -* [Usage](usage.md) -* [Writing functions](writing.md) -* [Testing functions](testing.md) -* [Hot functions](hot-functions.md) -* [Async functions](async.md) +* [API Reference](http://petstore.swagger.io/?url=https://raw.githubusercontent.com/fnproject/fn/master/docs/swagger.yml) +* [FAQ](faq.md) +* [Object Model](developers/model.md) * [Configuration](developers/configs.md) -* [fn (CLI Tool)](https://github.com/fnproject/cli/blob/master/README.md) +* [FDKs](developers/clients.md) +* [Function file (func.yaml)](function-file.md) * [Hot functions](hot-functions.md) +* [Testing functions](testing.md) +* [Writing functions](writing.md) + +### Advanced +* [Open Function Format](function-format.md) +* [Packaging functions](packaging.md) +* [CLI Source](https://github.com/fnproject/cli/) * [Async functions](async.md) * [Organizing functions into an application](developers/apps.md) -* [Function file (func.yaml)](function-file.md) -* [Client Libraries](developers/clients.md) -* [Packaging functions](packaging.md) -* [Open Function Format](function-format.md) -* [API Reference](http://petstore.swagger.io/?url=https://raw.githubusercontent.com/fnproject/fn/master/docs/swagger.yml) -* [Object Model](developers/model.md) -* [FAQ](faq.md) -* [Setting up development environment with Docker compose](./operating/compose.md) ## For Operators If you are operating Fn, this section is for you. -* [Running in Production Overview](operating/production.md) -* [Runtime Options](operating/options.md) -* [Databases](operating/databases/README.md) -* [Message Queues](operating/mqs/README.md) -* [UI](operating/ui.md) +### Getting Started +* [Running in Production](operating/production.md) * [Logging](operating/logging.md) +* [Message Queues](operating/mqs/README.md) * [Metrics](operating/metrics.md) -* [Triggers](operating/triggers.md) +* [Operating on Windows](operating/windows.md) +* [Runtime Options](operating/options.md) +* [User Interface](operating/ui.md) + +### Advanced * [Extending Fn](operating/extending.md) -* [Docker Configuration](operating/docker.md) -* [Operating On Windows](operating/windows.md) * [Running Fn on Kubernetes](operating/kubernetes/README.md) +* [Setting up development environment with Docker compose](./operating/compose.md) +* [OpenStack Triggers](operating/triggers.md) +* [Docker Configuration](operating/docker.md) + + + +## Learn More + +* [Examples](../examples) +* [Getting Started Series](../examples/tutorial) +* [Tutorials](https://github.com/fnproject/tutorials) + + diff --git a/examples/README.md b/examples/README.md index 3de9385b7..39e0e2548 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,7 +1,9 @@ # Example Functions -This directory has a collection of example functions you can look at to learn more about how to write them or just copy one and build on it to get started faster. +This directory has a collection of example functions you can look at to learn more about how to write them or just copy one and build on it to get started faster. -## Tutorial Series +## Learn More -The [Tutorial Series](tutorial/) will demonstrate some of Fn capabilities through a series of exmaples. We'll try to show examples in most major languages. This is a great place to start! +* [Documentation](../docs) +* [Getting Started Series](../examples/tutorial) +* [Tutorials](https://github.com/fnproject/tutorials) diff --git a/examples/tutorial/README.md b/examples/tutorial/README.md index dcf94f843..a815e36b7 100644 --- a/examples/tutorial/README.md +++ b/examples/tutorial/README.md @@ -1,31 +1,25 @@ -# Tutorial Series +# Getting Started Series -Welcome to the Fn Tutorial Series, the best way to get started with Fn and serverless computing. In the following tutorials, we'll gradually introduce many of the key features of Fn. +Welcome to the Fn Getting Started Series, the best way to get started with Fn and serverless computing. -## Guided Tour -### Part 1 +## Hello World Examples Learn the basics about sending data into your function. Choose your language: -* [go](hello/go) * [java](hello/java) +* [go](hello/go) * [node](hello/node) -* [php](hello/php) * [python](hello/python) -* [ruby](hello/ruby) -* [rust](hello/rust) -### Part 2 +## Key Examples -Learn how to get parameters from a web request. [Click here](params) +* Learn how to get parameters from a web request. [Click here](params) +* Write your first HotFunction (stays alive to minimize latency between requests). [Click here](../../docs/hot-functions.md) -### Part 3 +## Learn More -Write your first HotFunction (stays alive to minimize latency between requests). [Click here](https://github.com/fnproject/fn/tree/master/examples/formats) - -## Other Tutorials - -* [Introduction to Fn](https://github.com/fnproject/tutorials/tree/master/Introduction) -* [Introduction to Java Fn](https://github.com/fnproject/tutorials/tree/master/JavaFDKIntroduction) +* [Documentation](../../docs) +* [Examples](..) +* [Tutorials](https://github.com/fnproject/tutorials)