Log in to GraphQL Editor
GraphQL library for Python - Strawberry
Robert

Robert Matyszewski

6/19/2019

GraphQL library for Python - Strawberry

I recently came across an interesting library for GraphQL. Strawberry is a new GraphQL library for Python 3, inspired by dataclasses. An initial version of Strawberry has been released on GitHub. To follow the project, you can sign up to get updates on the Strawberry site or github. Links below:

https://strawberry.rocks/

Strawberry is created by patrick91 who is also an organizer of @pyconit. It was originally announced during Python Pizza Berlin.

strawberry

#PyPi release and demo

Alpha version on PyPI: https://pypi.org/project/strawberry-graphql Demo on Heroku using Starlette:

#Installation

pip install strawberry-graphql

Getting Started

Create a file called app.py with the following code:

import strawberry


@strawberry.type
class User:
    name: str
    age: int


@strawberry.type
class Query:
    @strawberry.field
    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 following link: http://0.0.0.0:8000/graphql

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

{% github strawberry-graphql/strawberry %}

Check out our other blogposts

Most popular GraphQL servers
Tomek Poniatowicz
Tomek Poniatowicz
Most popular GraphQL servers
3 min read
about 3 years ago
GraphQL Static Site Generator (SSG)
Tomek Poniatowicz
Tomek Poniatowicz
GraphQL Static Site Generator (SSG)
3 min read
over 2 years ago
GraphQL Asia 2021
Tomek Poniatowicz
Tomek Poniatowicz
GraphQL Asia 2021
3 min read
over 2 years ago

Ready for take-off?

Elevate your work with our editor that combines world-class visual graph, documentation and API console

Get Started with GraphQL Editor