- Home
- GraphQL Tools
- Strawberry GraphQL
Strawberry GraphQL
What it is
Strawberry GraphQL is a free, MIT-licensed Python library for creating GraphQL APIs, intended for self-hosted deployment. Developers define schemas with Python type hints, while async/await support lets resolvers run without blocking. Schema and field extensions provide ways to add custom logic, and generics support reusable types. Built-in dataloader support batches queries, and the library can create federated GraphQL schemas. The getting-started guide installs the library with pip and requires Python 3.10 or later. Its documentation lists integrations for Django, Channels, FastAPI, Flask, Quart, Sanic, Chalice, Starlette, Litestar, and AIOHTTP, while warning that the integration table may be out of date. Authentication is handled by the web framework; Strawberry uses Permissions classes for authorization. The project is open source and maintained by a small developer team, with enterprise support available through Farbun. Its listed plan costs nothing. The repository asks users to report sensitive security issues directly by email rather than through its issue tracker.
For and against
For
- Free and MIT licensed
- Supports async/await resolvers
- Includes dataloader support
- Supports federated schemas
- Offers framework integrations
Against
- Requires Python 3.10 or later
- Integration table may be out of date
- Enterprise support is available through Farbun
The verdict
Strawberry GraphQL offers Python-focused tools for defining and extending GraphQL APIs without a listed license cost. Check the current framework integration details before relying on them.
Who it suits
It suits Python developers building GraphQL APIs who want type-hint-based schemas and self-hosted deployment. Teams using supported web frameworks may also find its integration options relevant.
Plans and prices
Strawberry GraphQL
Open-source Python library; MIT licensed
Read 3 Oct 2026 · github.com
On the record
- Async
- It supports async/await so resolvers can run in a non-blocking way.strawberry.rocks · read 3 Oct 2026
- Authentication and authorization
- The guide says authentication is handled by the web framework and authorization in Strawberry uses Permissions classes.strawberry.rocks · read 3 Oct 2026
- Data loading
- Built-in dataloader support batches multiple queries into one.strawberry.rocks · read 3 Oct 2026
- Extensibility
- Schema and field extensions let developers add custom logic.strawberry.rocks · read 3 Oct 2026
- Federation
- It supports creating a federated GraphQL schema.strawberry.rocks · read 3 Oct 2026
- Framework integrations
- The documentation lists integrations including Django, Channels, FastAPI, Flask, Quart, Sanic, Chalice, Starlette, Litestar, and AIOHTTP, while warning that its integration table is not up to date.strawberry.rocks · read 3 Oct 2026
- Generics
- It supports generics for reusable types.strawberry.rocks · read 3 Oct 2026
- Installation and runtime
- The getting-started guide installs Strawberry with pip and says it requires Python 3.10 or later.strawberry.rocks · read 3 Oct 2026
- License
- The repository states that Strawberry is licensed under the MIT license.github.com · read 3 Oct 2026
- Security contact
- The repository asks users to report sensitive security bugs directly to [email protected] instead of using the issue tracker.github.com · read 3 Oct 2026
- Support
- The project is open source and maintained by a small developer team; enterprise support is available through Farbun.strawberry.rocks · read 3 Oct 2026
- Type hints
- It uses Python type hints to define GraphQL schemas and provide a developer experience for creating GraphQL libraries.strawberry.rocks · read 3 Oct 2026
- What it does
- Strawberry is a developer-friendly GraphQL library for Python for creating GraphQL APIs.strawberry.rocks · read 3 Oct 2026