Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Escape-Technologies/graphman
Quikly scaffold a postman collection for a GraphQL API. Compatible with Postman & Insomnia.
https://github.com/Escape-Technologies/graphman
api deno escape graphql graphql-tools insomnia postman typescript
Last synced: 4 days ago
JSON representation
Quikly scaffold a postman collection for a GraphQL API. Compatible with Postman & Insomnia.
- Host: GitHub
- URL: https://github.com/Escape-Technologies/graphman
- Owner: Escape-Technologies
- License: mit
- Created: 2022-07-06T13:43:41.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-09T21:18:53.000Z (over 1 year ago)
- Last Synced: 2024-04-22T12:07:04.826Z (7 months ago)
- Topics: api, deno, escape, graphql, graphql-tools, insomnia, postman, typescript
- Language: TypeScript
- Homepage:
- Size: 193 KB
- Stars: 236
- Watchers: 7
- Forks: 12
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-graphql-security - GraphMan - Generate a complete Postman collection from a GraphQL endpoint. Allows instant and easy discovery and exploration of the API. (Neutral Security / Self-Discovery)
README
# GraphMan
Quickly scaffold a postman collection for a GraphQL API.---
GraphMan CLI generates an complete collection from a GraphQL endpoint,
containing one request per query & mutation, with pre filled fields, parameters
and variables._Note: GraphMan is designed for the postman-collection spec 2.1_
β¨GraphMan is fully compatible with the Insomnia API Client out of the box!β¨
### Status
![Version](https://img.shields.io/github/v/release/Escape-Technologies/graphman)
[![CD](https://github.com/Escape-Technologies/graphman/actions/workflows/cd.yaml/badge.svg)](https://github.com/Escape-Technologies/graphman/actions/workflows/cd.yaml)
[![Checks](https://github.com/Escape-Technologies/graphman/actions/workflows/check.yml/badge.svg)](https://github.com/Escape-Technologies/graphman/actions/workflows/check.yml)## Motivation
Visualizing and exploring existing graphql APIs can be quite daunting. Using
postman to manage all your apis is pretty standard, however creating and
maintaining collections is difficult. GraphMan makes thoses things easy, helping
you for:- Graph discovery
- Graph testing
- Collection updating## Usage
### Run from url
_GraphMan uses deno as a javascript / typescript runtime. That allows to run the
CLI from the file url._ To get started:1. [Install deno](https://deno.land/#installation)
2. Run:
`deno run https://deno.land/x/[email protected]/src/cli.ts `
3. Import the generated `[...].postman_collection.json` file in postman.### Install GraphMan
If you want to access graphman easly you can "install" it on your machine:
1. [Install deno](https://deno.land/#installation)
2. Run:
`deno install -r -f --allow-net --allow-write -n graphman https://deno.land/x/[email protected]/src/cli.ts`
3. The command will output `export PATH="..."` copy paste it in your `~/.bashrc`
or `~/.zshrc` file to add graphman to your path. You can now run graphman
using the `graphman ` command! π To **update** GraphMan just
reproduce the **step 2**._Note: this is not a real installation, it just creates a script that basically
aliases the run form url command._### Run locally
1. Clone the repo
2. Run `deno run src/index.ts `_Note that deno will ask for network and file-system permissions as it's runtime
is secure by default_The relases are mirrored at https://deno.land/x/graphman@VERSION, you can use
previous versions if needed.### CLI Options
- Custom output filename: `--out=FILENAME`
- Headers: `-H="header: value"`, can be used multiple times.
- Global Postman collection authorization header: `--AuthHeader="header: value"`
or `-A="header: value"`
- Get help: `--help` or `-h`### Examples
You can try graphman on public graphql APIs, and it is a great way to get
started with graphQL:- Rick&Morty API:
`deno run https://deno.land/x/[email protected]/src/cli.ts https://rickandmortyapi.com/graphql`| |
| :----------------------------------------------------------------------------------------------------------------: |
| _GraphMan collection for the Rick and morty API_ || |
| :-----------------------------------------------------------------------------------------------------------: |
| _Character query for the Rick and morty API collection_ |## Issues and contributions
- Please open an issue if you encounter bugs, with reproduction steps and error
message.
- For feature requests, please open an issue too
- Feel free to create merge requests to improve GraphMan !