You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
piq9117 939573ffa1 project rename (#28) 1 month ago
app project rename (#20) 1 month ago
nix nix setup (#25) 1 month ago
src project rename (#27) 1 month ago
test removed vomit word (#21) 1 month ago
.gitignore static binary (#14) 8 months ago
CHANGELOG.md project rename (#27) 1 month ago
LICENSE init 9 months ago
README.md project rename (#28) 1 month ago
Setup.hs init 9 months ago
default.nix project rename (#27) 1 month ago
graphql-seamstress.cabal project rename (#27) 1 month ago
release.nix nix setup (#25) 1 month ago
shell.nix project rename (#27) 1 month ago
stack.yaml static binary (#14) 8 months ago
static.nix project rename (#27) 1 month ago

README.md

Graphql Seamstress

This CLI tool will stitch your schemas if and only if they are organized this way

+--my-schema-dir
   |--person.gql
   |--dog.gql
   |--post.gql
   ( etc.. )

Commands

Graphql Schema Seamstress: A graphql schema stitcher.

Usage: graphql-seamstress --src-dir ARG --output ARG
  Graphql Schema Seamstress is a cli tool that will stitch all your schema
  them into one file.

Available options:
  -h,--help                Show this help text
  --src-dir ARG            Schema source directory path.
  --output ARG             Output path for the schema stitched result.

In Action

Running this command will result in stitching all the schemas in test/test-schema

graphql-seamstress --src-dir test/test-schema --output my-schema.gql

The result will look like

"""
File generated by Graphql Schema Seamstress
"""
type Person {
  firstName: String
  lastName: String
}

type Post {
  author: String
  comment: String
}

type Dog {
  name: String
}

type Query {
  dog: String
  posts: [Post]
  getPerson(name: String): Person
}

type Mutation {
  addPost(author: String, comment: String): Post
  setDogName(name: String): Dog
  setPersonName(name: String): Person
}

type Subscription {
  postAdded: Post
}

schema {
  query: Query
  mutation: Mutation
  subscription: Subscription
}

Building it yourself

With Nix

nix-shell

Once you are in a nix shell

cabal build
cabal install # installs in .cabal/bin

If you want to build the static binary yourself

Without going into a nix-shell

nix-build static.nix