Awesome Open Source
Awesome Open Source

graphql-compose-aws

npm trends Travis Commitizen friendly semantic-release Greenkeeper badge

This module expose AWS Cloud API via GraphQL.

Generated Schema Introspection in SDL format can be found here (more than 10k types, ~2MB).

AWS SDK GraphQL

Supported all AWS SDK versions via official aws-sdk js client. Internally it generates Types and FieldConfigs from AWS SDK configs. You may put this generated types to any GraphQL Schema.

import { GraphQLSchema, GraphQLObjectType } from 'graphql';
import awsSDK from 'aws-sdk';
import { AwsApiParser } from 'graphql-compose-aws';

const awsApiParser = new AwsApiParser({
  awsSDK,
});

const schema = new GraphQLSchema({
  query: new GraphQLObjectType({
    name: 'Query',
    fields: {
      // Full API
      aws: awsApiParser.getFieldConfig(),

      // Partial API with desired services
      s3: awsApiParser.getService('s3').getFieldConfig(),
      ec2: awsApiParser.getService('ec2').getFieldConfig(),
    },
  }),
});

export default schema;

Full code examples

Installation

yarn add graphql graphql-compose aws-sdk graphql-compose-aws
// or
npm install graphql graphql-compose aws-sdk graphql-compose-aws --save

Modules graphql, graphql-compose, aws-sdk are in peerDependencies, so should be installed explicitly in your app.

Screenshots

Get List of EC2 instances from eu-west-1 region

screen shot 2017-12-03 at 18 19 28

Several AWS API calls in one query with different services and regions

screen shot 2017-12-03 at 18 07 50

License

MIT

Alternatives To Graphql Compose Aws
Select To Compare


Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Typescript (255,712
Amazon Web Services (38,432
Aws (38,432
Sdk (32,757
Types (29,996
Cloud (29,150
Graphql (15,855
Graphiql (713
Aws Sdk (562
Amazon Api (95
Api Proxy (13