Code Monkey home page Code Monkey logo

graphql-bleeding-edge-playground's Introduction

Experimental GraphQL Playground

Demonstration of the bleeding edge GraphQL features


Features:

  • Query (HTTP, HTTP-Multipart, WebSocket)
  • Mutation (HTTP, HTTP-Multipart, WebSocket)
  • Query with @defer (HTTP-Multipart, WebSocket)
  • Query with @stream (HTTP-Multipart, WebSocket)
  • Subscription (WebSocket/SSE)
  • Query with @live (WebSocket/SSE)
  • OneOf/Polymorphic Input Objects and Fields

Check out the Fetcher implementations on GraphiQL

Built on the following transports:

and powered by the following libraries:

  • graphql-js - The JavaScript reference implementation for GraphQL
  • meros - Makes reading multipart responses simple
  • SSE-Z - Simple SSE wrapper
  • envelop - The missing graphql.js plugin/extension library
  • graphql-live-query - GraphQL live queries for any GraphQL schema

Running on ESM ;)

Setup instructions

  1. clone this repo
  2. Make sure you have yarn and node v14 installed
  3. Run yarn install

Usage

Start the server with yarn server:start

Start the frontend yarn start

Visit localhost:3000/__dev__/graphiql

Execute some operations :)

Custom server url

You can point to your own/custom graphql sever by editing the variables in your .env file.

  • The VITE_WS_URL env variable points to your websocket connection url
  • The VITE_GRAPHQL_SERVER_URL env variable points to your graphql server url

graphql-bleeding-edge-playground's People

Contributors

danielrearden avatar joeynimu avatar maraisr avatar n1ru4l avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

graphql-bleeding-edge-playground's Issues

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update dependency patch-package to v6.5.1
  • chore(deps): update dependency prettier to v2.8.8
  • chore(deps): update dependency ts-node to v10.9.2
  • chore(deps): update dependency typescript to v4.9.5
  • chore(deps): update dependency vite to v2.9.17
  • fix(deps): update dependency graphql-helix to v1.13.0
  • fix(deps): update dependency graphql-ws to v5.15.0
  • fix(deps): update dependency ws to v8.16.0 (ws, @types/ws)
  • fix(deps): update envelop (@envelop/core, @envelop/extended-validation)
  • fix(deps): update n1ru4l packages (@n1ru4l/graphql-live-query, @n1ru4l/in-memory-live-query-store, @n1ru4l/push-pull-async-iterable-iterator, @n1ru4l/socket-io-graphql-client, @n1ru4l/socket-io-graphql-server)
  • fix(deps): update socket.io packages to v4.7.4 (socket.io, socket.io-client)
  • chore(deps): update dependency @types/jest to v29
  • chore(deps): update dependency @types/node to v20
  • chore(deps): update dependency graphiql to v3
  • chore(deps): update dependency patch-package to v8
  • chore(deps): update dependency prettier to v3
  • chore(deps): update dependency ts-node-dev to v2
  • chore(deps): update dependency typescript to v5
  • chore(deps): update dependency vite to v5
  • chore(deps): update react monorepo to v18 (major) (@types/react, @types/react-dom, react, react-dom)
  • chore(deps): update testing library (major) (@testing-library/jest-dom, @testing-library/react, @testing-library/user-event)
  • fix(deps): update envelop (major) (@envelop/core, @envelop/extended-validation)
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/ci.yml
npm
package.json
  • @envelop/core 1.2.0
  • @envelop/extended-validation 1.1.1
  • @n1ru4l/graphql-live-query 0.9.0
  • @n1ru4l/in-memory-live-query-store 0.8.0
  • @n1ru4l/socket-io-graphql-server 0.12.0
  • @tinyhttp/app 1.3.15
  • @tinyhttp/cors 1.3.2
  • graphql 15.4.0-experimental-stream-defer.1
  • graphql-helix 1.10.3
  • graphql-ws 5.5.5
  • socket.io 4.4.0
  • ws 8.4.0
  • @n1ru4l/push-pull-async-iterable-iterator 3.1.0
  • @n1ru4l/socket-io-graphql-client 0.11.1
  • @testing-library/jest-dom 5.16.1
  • @testing-library/react 12.1.2
  • @testing-library/user-event 13.5.0
  • @types/jest 27.0.2
  • @types/node 14.18.12
  • @types/react 17.0.34
  • @types/react-dom 17.0.9
  • @types/ws 8.2.2
  • @vitejs/plugin-react-refresh 1.3.6
  • cross-env 7.0.3
  • esm 3.2.25
  • graphiql 1.4.2
  • meros 1.1.4
  • milliparsec 2.2.0
  • patch-package 6.4.7
  • prettier 2.5.1
  • react 17.0.2
  • react-dom 17.0.2
  • socket.io-client 4.4.0
  • sse-z 0.3.0
  • ts-node 10.4.0
  • ts-node-dev 1.1.8
  • typescript 4.5.2
  • vite 2.8.6
  • graphql 15.4.0-experimental-stream-defer.1

  • Check this box to trigger a request for Renovate to run again on this repository

use graphql-yoga

The bleeding edge playground should be updated to use Yoga ๐Ÿ˜‡

Server won't start

Hey @n1ru4l ,

I still can't get the server to start, the yarn server:start script errors as below;

jngethe@Joes-MacBook-Pro graphql-bleeding-edge-playground % yarn server:start
yarn run v1.22.5
$ cross-env NODE_ENV=development node --experimental-specifier-resolution=node --loader ts-node/esm ./server/main.ts
(node:47920) ExperimentalWarning: --experimental-loader is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:397
  throw new ERR_PACKAGE_PATH_NOT_EXPORTED(
        ^
CustomError: ERR_PACKAGE_PATH_NOT_EXPORTED /Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/graphql-helix/ . /Users/jngethe/Desktop/graphql-bleeding-edge-playground/server/main.ts
    at throwExportsNotFound (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:397:9)
    at packageExportsResolve (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:586:7)
    at packageResolve (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:763:14)
    at moduleResolve (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:815:18)
    at Object.defaultResolve (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist-raw/node-esm-resolve-implementation.js:929:11)
    at /Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/src/esm.ts:68:38
    at Generator.next (<anonymous>)
    at /Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist/esm.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (/Users/jngethe/Desktop/graphql-bleeding-edge-playground/node_modules/ts-node/dist/esm.js:4:12)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I am not sure if anyone else is getting this error or it's specific to me.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.