All Projects â†’ APIs-guru â†’ Graphql Faker

APIs-guru / Graphql Faker

Licence: mit
🎲 Mock or extend your GraphQL API with faked data. No coding required.

Programming Languages

typescript
32286 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Graphql Faker

Fakerql
Hosted faker GraphQL endpoint for frontend developers
Stars: ✭ 152 (-93.56%)
Mutual labels:  graphql, faker
Pop
Monorepo of the PoP project, including: a server-side component model in PHP, a GraphQL server, a GraphQL API plugin for WordPress, and a website builder
Stars: ✭ 160 (-93.22%)
Mutual labels:  api, graphql
Payload
Headless CMS and Application Framework built with Node.js, React and MongoDB
Stars: ✭ 154 (-93.48%)
Mutual labels:  api, graphql
Morphlingjs
A CLI to mock with meaningful data a REST API from a Swagger file
Stars: ✭ 148 (-93.73%)
Mutual labels:  faker, mock
Examples
Examples of Mock Service Worker usage with various frameworks and libraries.
Stars: ✭ 163 (-93.1%)
Mutual labels:  api, graphql
Core
The server component of API Platform: hypermedia and GraphQL APIs in minutes
Stars: ✭ 2,004 (-15.12%)
Mutual labels:  api, graphql
Raml Server
run a mocked server JUST based on a RAML API's definition .. zero coding
Stars: ✭ 158 (-93.31%)
Mutual labels:  api, mock
Duckrails
Development tool to mock API endpoints quickly and easily (docker image available)
Stars: ✭ 1,690 (-28.42%)
Mutual labels:  api, mock
Graphql2rest
GraphQL to REST converter: automatically generate a RESTful API from your existing GraphQL API
Stars: ✭ 181 (-92.33%)
Mutual labels:  api, graphql
Vendure
A headless GraphQL ecommerce framework for the modern web
Stars: ✭ 2,961 (+25.41%)
Mutual labels:  api, graphql
Examples
Examples for GraphQL.NET
Stars: ✭ 179 (-92.42%)
Mutual labels:  api, graphql
Graphene Django Subscriptions
This package adds support to Subscription's requests and its integration with websockets using Channels package.
Stars: ✭ 173 (-92.67%)
Mutual labels:  api, graphql
Graphql Genie
Simply pass in your GraphQL type defintions and get a fully featured GraphQL API with referential integrity, inverse updates, subscriptions and role based access control that can be used client side or server side.
Stars: ✭ 147 (-93.77%)
Mutual labels:  api, graphql
Sangria
Scala GraphQL implementation
Stars: ✭ 1,869 (-20.84%)
Mutual labels:  api, graphql
Smoke
💨 Simple yet powerful file-based mock server with recording abilities
Stars: ✭ 142 (-93.99%)
Mutual labels:  api, mock
Countries
🌎 Public GraphQL API for information about countries
Stars: ✭ 156 (-93.39%)
Mutual labels:  api, graphql
Subzero Starter Kit
Starter Kit and tooling for authoring GraphQL/REST API backends with subZero
Stars: ✭ 136 (-94.24%)
Mutual labels:  api, graphql
Graphql Api For Wp
[READ ONLY] GraphQL API for WordPress
Stars: ✭ 136 (-94.24%)
Mutual labels:  api, graphql
Wp Graphql Gutenberg
Query gutenberg blocks with wp-graphql
Stars: ✭ 158 (-93.31%)
Mutual labels:  api, graphql
Express Graphql Typescript Boilerplate
A starter kit for building amazing GraphQL API's with TypeScript and express by @w3tecch
Stars: ✭ 163 (-93.1%)
Mutual labels:  api, graphql

GraphQL Faker logo

GraphQL Faker

Build Status npm David David npm docker

Mock your future API or extend the existing API with realistic data from faker.js. No coding required. All you need is to write GraphQL SDL. Don't worry, we will provide you with examples in our SDL editor.

In the GIF below we add fields to types inside real GitHub API and you can make queries from GraphiQL, Apollo, Relay, etc. and receive real data mixed with mock data. demo-gif

How does it work?

We use @fake directive to let you specify how to fake data. And if 60+ fakers is not enough for you, just use @examples directive to provide examples. Use @listLength directive to specify number of returned array items. Add a directive to any field or custom scalar definition:

type Person {
  name: String @fake(type: firstName)
  gender: String @examples(values: ["male", "female"])
  pets: [Pet] @listLength(min: 1, max: 10)
}

No need to remember or read any docs. Autocompletion is included!

Features

  • 60+ different types of faked data e.g. streetAddress, firstName, lastName, imageUrl, lorem, semver
  • Comes with multiple locales supported
  • Runs as a local server (can be called from browser, cURL, your app, etc.)
  • Interactive editor with autocompletion for directives with GraphiQL embedded
  • ✨ Support for proxying existing GraphQL API and extending it with faked data Extend mode diagram

Install

npm install -g graphql-faker

or run it in a Docker container, see Usage with Docker

TL;DR

Mock GraphQL API based on example SDL and open interactive editor:

graphql-faker --open

Note: You can specify non-existing SDL file names - Faker will use example SDL which you can edit in interactive editor.

Extend real data from SWAPI with faked data based on extension SDL:

graphql-faker ./ext-swapi.graphql --extend http://swapi.apis.guru

Extend real data from GitHub API with faked data based on extension SDL (you can get token here):

graphql-faker ./ext-gh.graphql --extend https://api.github.com/graphql \
--header "Authorization: bearer <TOKEN>"

Usage

graphql-faker [options] [SDL file]

[SDL file] - path to file with SDL. If this argument is omitted Faker uses default file name.

Options

  • -p, --port HTTP Port [default: env.PORT or 9002]
  • -e, --extend URL to existing GraphQL server to extend
  • -o, --open Open page with SDL editor and GraphiQL in browser
  • -H, --header Specify headers to the proxied server in cURL format, e.g.: Authorization: bearer XXXXXXXXX
  • --forward-headers Specify which headers should be forwarded to the proxied server
  • --co, --cors-origin CORS: Specify the custom origin for the Access-Control-Allow-Origin header, by default it is the same as Origin header from the request
  • -h, --help Show help

When specifying the [SDL file] after the --forward-headers option you need to prefix it with -- to clarify it's not another header. For example:

graphql-faker --extend http://example.com/graphql --forward-headers Authorization -- ./temp.faker.graphql

When you finish with an other option there is no need for the --:

graphql-faker --forward-headers Authorization --extend http://example.com/graphql ./temp.faker.graphql

Usage with Docker

docker run -p=9002:9002 apisguru/graphql-faker [options] [SDL file]

To specify a custom file, mount a volume where the file is located to /workdir:

docker run -v=${PWD}:/workdir apisguru/graphql-faker path/to/schema.sdl

Because the process is running inside of the container, --open does not work.

Development

npm i
npm run build:all
npm run start
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].