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 ariadne@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.5.1.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ariadne_graphql_proxy-0.5.1-py3-none-any.whl (37.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ariadne_graphql_proxy-0.5.1.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ariadne_graphql_proxy-0.5.1.tar.gz
Algorithm Hash digest
SHA256 3651a592fb3a350bd46f0487f6d941ba461eea06703e62e1663256dd8fada19e
MD5 258d577fb435c8a8fcdbae793709962f
BLAKE2b-256 227548bab8c2fa7a10c24a02c8df57591464e291fad41f0c025f02d718ce0dd9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ariadne_graphql_proxy-0.5.1.tar.gz:

Publisher: publish.yml on mirumee/ariadne-graphql-proxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ariadne_graphql_proxy-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ariadne_graphql_proxy-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e6ce0db3df96da418d176aa36a50e7bd8326f6299c74e87eb373c44011ac02f
MD5 df5b067b4f7e6e9cac15f43878034b9f
BLAKE2b-256 8de64da7abb92c6b42523f366457c7750b72d763cf6bdd801f279e8de1ce876a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ariadne_graphql_proxy-0.5.1-py3-none-any.whl:

Publisher: publish.yml on mirumee/ariadne-graphql-proxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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