<!-- Snippet used in the following topics:
- versioned/functions/README.md
-->
Knative Functions provides templates that can be used to create basic functions, by initiating a function project boilerplate when you run a `create` command.

Templates allow you to choose the language and invocation format for your function. The following templates are available with both CloudEvent and HTTP invocation formats:

- [Node.js](https://github.com/knative/func/blob/main/docs/function-templates/nodejs.md){target=_blank}
- [Python](https://github.com/knative/func/blob/main/docs/function-templates/python.md){target=_blank}
- [Go](https://github.com/knative/func/blob/main/docs/function-templates/golang.md){target=_blank}
- [Quarkus](https://github.com/knative/func/blob/main/docs/function-templates/quarkus.md){target=_blank}
- [Rust](https://github.com/knative/func/blob/main/docs/function-templates/rust.md){target=_blank}
- [Spring Boot](https://github.com/knative/func/blob/main/docs/function-templates/springboot.md){target=_blank}
- [TypeScript](https://github.com/knative/func/blob/main/docs/function-templates/typescript.md){target=_blank}
