Skip to main content
Help us improve Python packaging – donate today!

GraphQL Framework for Python

Project Description

You are in the next unreleased version of Graphene (1.0.dev). Please read UPGRADE-v1.0.md to learn how to upgrade.


Graphene Logo Graphene Build Status PyPI version Coverage Status

Graphene is a Python library for building GraphQL schemas/types fast and easily.

  • Easy to use: Graphene helps you use GraphQL in Python without effort.
  • Relay: Graphene has builtin support for Relay
  • Django: Automatic Django model mapping to Graphene Types. Check a fully working Django implementation

Graphene also supports SQLAlchemy!

What is supported in this Python version? Everything: Interfaces, ObjectTypes, Scalars, Unions and Relay (Nodes, Connections), in addition to queries, mutations and subscriptions.

NEW!: Try graphene online

Installation

For instaling graphene, just run this command in your shell

pip install graphene>=1.0.dev
# In case of need Django model support
pip install graphene-django>=1.0.dev
# Or in case of need SQLAlchemy support
pip install graphene-sqlalchemy>=1.0.dev

1.0 Upgrade Guide

Please read UPGRADE-v1.0.md to learn how to upgrade.

Examples

Here is one example for get you started:

class Query(graphene.ObjectType):
    hello = graphene.String(description='A typical hello world')
    ping = graphene.String(description='Ping someone',
                           to=graphene.String())

    def resolve_hello(self, args, info):
        return 'World'

    def resolve_ping(self, args, info):
        return 'Pinging {}'.format(args.get('to'))

schema = graphene.Schema(query=Query)

Then Querying graphene.Schema is as simple as:

query = '''
    query SayHello {
      hello
      ping(to:"peter")
    }
'''
result = schema.execute(query)

If you want to learn even more, you can also check the following examples:

Contributing

After cloning this repo, ensure dependencies are installed by running:

python setup.py install

After developing, the full test suite can be evaluated by running:

python setup.py test # Use --pytest-args="-v -s" for verbose mode

Release history Release notifications

History Node

2.1

History Node

2.0.1

History Node

2.0

History Node

2.0.dev20170802065539

History Node

2.0.dev20170801053013

History Node

2.0.dev20170727061432

History Node

2.0.dev20170727024417

History Node

2.0.dev20170725061556

History Node

2.0.dev20170725043308

History Node

2.0.dev20170724064308

History Node

1.4.2

History Node

1.4.1

History Node

1.4

History Node

1.3

History Node

1.2

History Node

1.1.3

History Node

1.1.2

History Node

1.1.1

History Node

1.1

History Node

1.0.2

History Node

1.0.1

History Node

1.0

History Node

1.0.dev20160922020647

History Node

1.0.dev20160921153356

History Node

1.0.dev20160920070441

History Node

1.0.dev20160920015515

History Node

1.0.dev20160918041239

History Node

1.0.dev20160917190505

History Node

1.0.dev20160911051803

This version
History Node

1.0.dev20160911044410

History Node

1.0.dev20160909055438

History Node

1.0.dev20160909040318

History Node

1.0.dev20160823061102

History Node

1.0.dev20160822080320

History Node

1.0.dev20160816073455

History Node

1.0.dev20160815004752

History Node

0.10.2

History Node

0.10.1

History Node

0.10.0

History Node

0.9.1

History Node

0.9

History Node

0.9b1

History Node

0.8.1

History Node

0.8.0

History Node

0.7.3

History Node

0.7.2

History Node

0.7.1

History Node

0.7.0

History Node

0.6.1

History Node

0.6.0

History Node

0.5.0

History Node

0.4.3

History Node

0.4.2

History Node

0.4.1.1

History Node

0.4.1

History Node

0.4.0.1

History Node

0.4.0

History Node

0.3.0

History Node

0.1.6.1

History Node

0.1.6.0

History Node

0.1.6

History Node

0.1.6a1

History Node

0.1.5.3

History Node

0.1.5.2

History Node

0.1.5.1

History Node

0.1.5

History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

History Node

0.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
graphene-1.0.dev20160911044410.tar.gz (26.1 kB) Copy SHA256 hash SHA256 Source None Sep 11, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page