Skip to main content

GraphQL query builder.

Project description

This project is inspired by https://graphiql-online.com.

https://github.com/eerimoq/gqt/raw/main/docs/assets/showcase.gif

Installation

$ pip3 install gqt

Usage

Set default GraphQL end-point URL:

$ export GQT_URL=https://mys-lang.org/graphql

Interactively create a query and execute it:

$ gqt
{"statistics": {"number_of_graphql_requests": 234}}

Repeat last query:

$ gqt -r
{"statistics": {"number_of_graphql_requests": 235}}

Print the query instead of executing it:

$ gqt -q
{"query":"{statistics {number_of_graphql_requests}}"}

Use jq for indentation, colors and extracting field values:

$ gqt | jq
{
  "statistics": {
    "number_of_graphql_requests": 236
  }
}
$ gqt | jq .statistics.number_of_graphql_requests
237

Ideas

  • Arguments and variables:

    ■: not null
    □: null
    $: variable

    Scalar example:

    ╭─ Query
    │ ▼ standard_library
    │   ▼ package
    │     ■ name: ""
    │     □ name
    │   ▶ packages

    List example:

    ╭─ Query
    │ ▼ item
    │   □ kinds:
    │   ■ kinds2:
    │     [0] ■ a: "foo"
    │         ■ b: "eq"
    │         ■ c:
    │           [0] ■ a: "x"
    │               ■ b: "y"
    │           [1]
    │     [1] ■ a: "bar"
    │         ■ b: "ne"
    │         □ c:
    │     [2]

    Variables example:

    ╭─ Query
    │ ▼ standard_library
    │   ▼ package
    │     $ name: name
    │     ■ id: 5
    │     $ kind: kind
    │     □ name
    │   □ number_of_downloads
    │ ▶ statistics
    
    ╭─ Variables
    │ name: "foo"
    │ kind:
    │   [0] ■ a: "bar"
    │       ■ b: "ne"
    │       □ c:
    │   [1]

    Print the variables:

    $ gqt -v
    {"name": "foo", "kind": [{"a": "bar", "b": "ne"}]}

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

gqt-0.31.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

gqt-0.31.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file gqt-0.31.0.tar.gz.

File metadata

  • Download URL: gqt-0.31.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for gqt-0.31.0.tar.gz
Algorithm Hash digest
SHA256 9d4b3ec72d31c635c8beac758c71031e95c2cad2432c217fee42088295eaa471
MD5 dba5fc8c5842c62b4a241a26e0de5db2
BLAKE2b-256 853493b8bff342ba742d801a6c2f5c0a787f8cafd7143896e1faa1e7dc2264fe

See more details on using hashes here.

File details

Details for the file gqt-0.31.0-py3-none-any.whl.

File metadata

  • Download URL: gqt-0.31.0-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for gqt-0.31.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7fddeeb5d4a1d270ba86f34daeaf61897fc235def4d766f4a1e84a7e2a64de99
MD5 da691d142c40a90d2f176c32d4a59cb3
BLAKE2b-256 227a33bec14b6f61596bf3588b9dd8a8b3f58f83e4455591faebabf0053af601

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