All Projects → graphql-python → Graphene Gae

graphql-python / Graphene Gae

Licence: bsd-3-clause
GraphQL Support for Google AppEngine [DEPRECATED - Looking for maintainers]

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Graphene Gae

Graphql Codegen Hasura
code-generator plugins for hasura/apollo-gql/typescript development
Stars: ✭ 113 (-5.04%)
Mutual labels:  graphql
Livepeerjs
JavaScript tools and applications that interact with Livepeer's smart contracts and peer-to-peer network
Stars: ✭ 116 (-2.52%)
Mutual labels:  graphql
Searchobjectgraphql
GraphQL plugin for SearchObject gem
Stars: ✭ 118 (-0.84%)
Mutual labels:  graphql
Graphql Markdown
The easiest way to document your GraphQL schema.
Stars: ✭ 114 (-4.2%)
Mutual labels:  graphql
Postgraphile
GraphQL is a new way of communicating with your server. It eliminates the problems of over- and under-fetching, incorporates strong data types, has built-in introspection, documentation and deprecation capabilities, and is implemented in many programming languages. This all leads to gloriously low-latency user experiences, better developer experiences, and much increased productivity. Because of all this, GraphQL is typically used as a replacement for (or companion to) RESTful API services.
Stars: ✭ 10,967 (+9115.97%)
Mutual labels:  graphql
Angular Enterprise Example
Scalable / Large Angular application structure example
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql
Graphql Live Query
Realtime GraphQL Live Queries with JavaScript
Stars: ✭ 112 (-5.88%)
Mutual labels:  graphql
Client Side Graphql
Stars: ✭ 119 (+0%)
Mutual labels:  graphql
Graphql Stack
A visual explanation of how the various tools in the GraphQL ecosystem fit together.
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql
Universal React Apollo Example
Universal React Apollo App (GraphQL) consuming: https://github.com/WeLikeGraphQL/wordpress-graphql-api-example!
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql
Pgql Lang
PGQL is an SQL-based query language for the Property Graph data model
Stars: ✭ 114 (-4.2%)
Mutual labels:  graphql
Graphql Nodejs Hapi Api
How to set-up a powerful API with Nodejs, GraphQL, MongoDB, Hapi, and Swagger
Stars: ✭ 116 (-2.52%)
Mutual labels:  graphql
Autograph
A GraphQL Client in Swift
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql
Automatic Api
A list of software that turns your database into a REST/GraphQL API
Stars: ✭ 1,583 (+1230.25%)
Mutual labels:  graphql
Server
Framework NodeJS for GraphQl
Stars: ✭ 118 (-0.84%)
Mutual labels:  graphql
Gitstats
An open source github contribution analyzer
Stars: ✭ 115 (-3.36%)
Mutual labels:  graphql
Flask Graphene Sqlalchemy
A demo project for Flask + GraphQL (With Graphene & SQLAlchemy)
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql
Shio
✨ :dna: Shio CMS - Model Content, Use GraphQL and Create Site using Javascript with Native Cache and Search.
Stars: ✭ 119 (+0%)
Mutual labels:  graphql
Awesome Angular Graphql
A curated collection of resources, clients and tools that make working with `GraphQL and Angular` awesome
Stars: ✭ 119 (+0%)
Mutual labels:  graphql
Odatatoentity
OData .net core
Stars: ✭ 117 (-1.68%)
Mutual labels:  graphql

=============================== Graphene GAE (deprecated!)

.. image:: https://travis-ci.org/graphql-python/graphene-gae.svg?branch=master :target: https://travis-ci.org/graphql-python/graphene-gae

.. image:: https://coveralls.io/repos/github/graphql-python/graphene-gae/badge.svg?branch=master :target: https://coveralls.io/github/graphql-python/graphene-gae?branch=master

.. image:: https://img.shields.io/pypi/v/graphene-gae.svg :target: https://pypi.python.org/pypi/graphene-gae

(This repository is deprecated due to lack of maintainers. If you're interested in taking over let us know via this issue <https://github.com/graphql-python/graphene-gae/issues/49>_ )

A Google AppEngine integration library for Graphene <http://graphene-python.org>__

Upgrade Notes

If you're upgrading from an older version (pre 2.0 version) please check out the Graphene Upgrade Guide <https://github.com/graphql-python/graphene/blob/master/UPGRADE-v2.0.md>__.

Installation

To install Graphene-GAE on your AppEngine project, go to your project folder and runthis command in your shell:

.. code:: bash

pip install graphene-gae -t ./libs

This will install the library and its dependencies to the libs folder under your projects root - so the dependencies get uploaded withyour GAE project when you publish your app.

Make sure the libs folder is in your python path by adding the following to your appengine_config.py:

.. code:: python

import sys

for path in ['libs']:
    if path not in sys.path:
        sys.path[0:0] = [path]

Examples

Here's a simple GAE model:

.. code:: python

class Article(ndb.Model):
    headline = ndb.StringProperty()
    summary = ndb.TextProperty()
    text = ndb.TextProperty()

    author_key = ndb.KeyProperty(kind='Author')

    created_at = ndb.DateTimeProperty(auto_now_add=True)
    updated_at = ndb.DateTimeProperty(auto_now=True)

To create a GraphQL schema for it you simply have to write the following:

.. code:: python

import graphene
from graphene_gae import NdbObjectType

class ArticleType(NdbObjectType):
    class Meta:
        model = Article

class QueryRoot(graphene.ObjectType):
    articles = graphene.List(ArticleType)

    @graphene.resolve_only_args
    def resolve_articles(self):
        return Article.query()

schema = graphene.Schema(query=QueryRoot)

Then you can simply query the schema:

.. code::python

query = '''
    query GetArticles {
      articles {
        headline,
        summary,
        created_at
      }
    }
'''
result = schema.execute(query)

To learn more check out the following examples <examples/>__:

  • Starwars <examples/starwars>__

Contributing

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

.. code:: sh

make deps
make install

Make sure tests and lint are running:

.. code:: sh

make test
make lint
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].