# strawberry-graphql/strawberry

A GraphQL library for Python that leverages type annotations 🍓

Repository: https://github.com/strawberry-graphql/strawberry
Canonical: https://ross.abutalabs.com/products/strawberry
Homepage: https://strawberry.rocks
Language: Python
License: MIT
License Family: permissive
Topics: graphql, graphql-server, python, starlette, asyncio, mypy, django, graphql-library, asgi, graphql-schema, strawberry, hacktoberfest, fastapi
Last push: 2026-08-26T16:06:33+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 99, release rhythm 85, longevity 100
- inputs: {"age_days": 2812, "days_push": 7, "days_rel": 23, "gap_med": 1, "n_releases_24m": 214}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4706, forks 661 (observed 2026-08-28T04:08:57.306798+00:00)

## What it is
Strawberry is a developer-friendly GraphQL library for Python built on dataclasses and type hints. It lets you define GraphQL schemas with Python type annotations and integrates with ASGI frameworks like FastAPI, Starlette, Django, and others.

## Use cases
- build a graphql api in python
- define graphql schema using type hints
- add a graphql endpoint to django
- serve graphql with fastapi or starlette
- write async graphql resolvers
- create a federated graphql schema
- batch database queries with dataloaders
- statically type-check graphql schema with mypy

## When to choose
- you want a code-first graphql library leveraging python type hints
- you need async/await support and modern framework integrations
- you want mypy type-checking of your graphql schema
- you need federation, generics, or dataloaders in python

## When to avoid
- you prefer schema-first graphql development
- you need a non-python graphql server
- you want a batteries-included api framework beyond graphql

## Facets
- artifact type: library
- maturity: active
- function: graphql, api-framework, web-framework, type-system, middleware
- domain: web-development, backend, apis
- platform: python, cross-platform
- tags: graphql-server, type-hints, dataclasses, async, django-integration, fastapi, starlette, federation, dataloaders, mypy-plugin, python, web-server

## Member repositories
- strawberry-graphql/strawberry (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:57.306798+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:19:10.674415+00:00, confidence not recorded.
  - readme: https://github.com/strawberry-graphql/strawberry (fetched 2026-08-28T04:08:57.306798+00:00, sha 5f5bf42d8d92)
  - homepage: https://strawberry.rocks (fetched 2026-08-29T09:03:05.923408+00:00, sha 1cb6c0a69ce5)
  - site_page: https://strawberry.rocks/docs (fetched 2026-08-29T09:03:05.926055+00:00, sha 1e2bb85baa16)
- Data as of 2026-08-30T08:39:29.467469+00:00.
