# API frameworks

The **Language & framework** step of the **New API** wizard lists backend frameworks, filtered by the **API type** you selected.

## Frameworks

| Language | Framework | REST | GraphQL | gRPC |
| --- | --- | --- | --- | --- |
| Node.js | Express | Yes | | |
| Node.js | NestJS | Yes | Yes | Yes |
| Node.js | Fastify | Yes | | |
| Node.js | Apollo Server | | Yes | |
| Node.js | grpc-node | | | Yes |
| Python | FastAPI | Yes | | |
| Python | Django REST | Yes | | |
| Python | Flask | Yes | | |
| Python | Strawberry | | Yes | |
| Python | grpcio | | | Yes |
| Ruby | Ruby on Rails | Yes | | |
| Ruby | graphql-ruby | | Yes | |
| Java | Spring Boot | Yes | Yes | |
| Go | Gin | Yes | | |
| Go | gqlgen | | Yes | |
| Go | grpc-go | | | Yes |
| PHP | Laravel | Yes | Yes | |
| C# | ASP.NET | Yes | | Yes |

**Other / not listed** is offered for every API type.

## What the selection does

The framework is a hint. The analysis receives it as the declared stack of the service, and reads the code, the schema or the `.proto` files to establish what the API does. A framework that is not in the list is analyzed the same way. Select **Other / not listed**.

To tell the analysis more than the framework, such as routes to skip or the service's own vocabulary, use the notes field of the wizard.

## GraphQL schemas built in code

When a GraphQL API has no SDL file and no committed generated schema, the analysis reconstructs the schema from the code that builds it. It recognizes the decorators of NestJS and TypeGraphQL, and schemas built with Pothos, Nexus, graphql-js, Strawberry and gqlgen. See [GraphQL](https://docs.faustine.ai/technologies/graphql/).

## Next steps

- [REST and OpenAPI](https://docs.faustine.ai/technologies/rest-openapi/): what Faustine does with a REST API.
- [GraphQL](https://docs.faustine.ai/technologies/graphql/): schema sources and the selection of fields.
- [gRPC](https://docs.faustine.ai/technologies/grpc/): reflection, `.proto` files and transport.
- [Create an API](https://docs.faustine.ai/apis/create-an-api/): the wizard, step by step.
