Skip to main content

Ariadne toolkit for building GraphQL proxies.

Project description

Ariadne


Ariadne GraphQL Proxy

Ariadne toolkit for building GraphQL proxies.

Features:

  • Combining multiple local and remote GraphQL schemas into single GraphQL schema.
  • Routing GraphQL queries to local and remote GraphQL schemas.
  • Foreign keys system for modeling relationships between separate services schemas.
  • Cache framework for caching of GraphQL query results per query fields.
  • Low-level utilities for GraphQL Schema manipulation: adding, removing and copying schema items.

Installation

Ariadne GraphQL Proxy can be installed with pip:

pip install ariadne-graphql-proxy

Ariadne GraphQL Proxy requires Python 3.10 or higher.

Example

Following code combines two remote schemas into one:

from ariadne.asgi import GraphQL
from ariadne_graphql_proxy import ProxySchema, get_context_value

proxy_schema = ProxySchema()

proxy_schema.add_remote_schema("https://example.com/first-graphql/")
proxy_schema.add_remote_schema("https://example.com/second-graphql/")

final_schema = proxy_schema.get_final_schema()

app = GraphQL(
    final_schema,
    context_value=get_context_value,
    root_value=proxy_schema.root_resolver,
)

Usage guide

For guide on using Ariadne GraphQL Proxy, please see the GUIDE.md file.

Note: Ariadne GraphQL Proxy is currently in prototyping stages. Library's API can and will change!

Contributing

We are welcoming contributions to Ariadne GraphQL Proxy!

If you've found a bug or issue, feel free to open GitHub issue.

If you have any questions or feedback, don't hesitate to catch us on GitHub discussions on main Ariadne repo.

Pull requests are also welcome! We only request that PRs providing new features and extending existing implementation are proceeded by discussion in dedicated GitHub issue with a proposal or on ariadne/discussions.

Also make sure you follow @AriadneGraphQL on Twitter for latest updates, news and random musings!

Crafted with ❤️ by Mirumee Software hello@mirumee.com

Project details


Download files

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

Source Distribution

ariadne_graphql_proxy-0.1.0.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

ariadne_graphql_proxy-0.1.0-py2.py3-none-any.whl (25.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ariadne_graphql_proxy-0.1.0.tar.gz.

File metadata

  • Download URL: ariadne_graphql_proxy-0.1.0.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for ariadne_graphql_proxy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 546c79af0bccbb38ec7e5a4264c4042ae5ae5c8a47e3dff1e5062be8a5b1c484
MD5 3c369a07e3ff11aa7440c6e654e94c6c
BLAKE2b-256 6732781cb8c69aac985f7468e6c3ba28311c0a4e0ee82556ad0a89e1019b1bed

See more details on using hashes here.

File details

Details for the file ariadne_graphql_proxy-0.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for ariadne_graphql_proxy-0.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 bf717ee18ae4f84e7c8217dcd88f98772e4dbe1037c862b055ee08fc20d59bc5
MD5 30dab7f926acc8d9e00993b47c0ac704
BLAKE2b-256 59ad86f691429bfde8a08409cebafff0bd3ee087148548b6f4cd1a66b5b19b20

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page