Skip to content
A new GraphQL library for Python πŸ“
Branch: master
Clone or download
Latest commit e93fce7 Apr 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Add circle configuration Feb 28, 2019
.github Add README Feb 28, 2019
strawberry Add docstring support for enum Apr 14, 2019
tests Add docstring support for enum Apr 14, 2019
.flake8 Update flake8 configuration Mar 31, 2019
.gitignore Improve Union support Feb 25, 2019
.isort.cfg Add logging for graphql requests Mar 1, 2019
.pre-commit-config.yaml Do not use python 3.6 for black in the pre-commit checks Apr 13, 2019 Documentation Updates Mar 31, 2019
LICENSE Update repo path Apr 10, 2019
poetry.lock Fix subscriptions and add test Apr 6, 2019
pyproject.toml Bump version Apr 13, 2019
pytest.ini Update pytest to only search tests in specific folder Feb 22, 2019

Strawberry GraphQL

Python GraphQL library based on dataclasses



Install with:

pip install strawberry-graphql

Getting Started

Create a file called with the following code:

import strawberry

class User:
    name: str
    age: int

class Query:
    def user(self, info) -> User:
        return User(name="Patrick", age=100)

schema = strawberry.Schema(query=Query)

This will create a GraphQL schema defining a User type and a single query field user that will return a hard coded user.

To run the debug server run the following command:

strawberry run server app

Open the debug server by clicking on the follwing link:

This will open a GraphQL playground where you can test the API.


We use poetry to manage dependencies, to get started follow these steps:

git clone
cd strawberry
poetry install
poetry run pytest

This will install all the dependencies (including dev ones) and run the tests.

Pre commit

We have a configuration for pre-commit, to add the hook run the following command:

pre-commit install



The code in this project is licensed under MIT license. See LICENSE for more information.

You can’t perform that action at this time.