graphql-playground icon indicating copy to clipboard operation
graphql-playground copied to clipboard

Announcing: Playground 🤝 GraphiQL, Retiring Playground

Open jasonkuhrt opened this issue 4 years ago • 14 comments

https://foundation.graphql.org/news/2020/04/03/web-based-graphql-ides-for-the-win-how-why-playground-graphiql-are-joining-forces/

We are happy to announce that GraphQL Playground and GraphiQL are joining forces.

In the next few days a formal blog post will be going out that talks about some of the changes taking place, new features you can expect, and existing ones you can count on staying.

TLDR; you will be able to do everything you were able to do in the latest graphql playground, and hopefully much more

Archiving this Repository

After a few minor bugfixes and a final release, we will archive this repository under the official GraphQL github organization. We will at least try to upgrade codemirror-graphql and the LSP to eliminate a few bugs we've addressed in those underlying packages. You will still be able to fork it and create other projects with it if you like.

Any further issues about the future GraphiQL preset for GraphQL Playground should be created in the graphiql repository for now, and will be fielded by the Playground Preset team. Eventually the playground preset may or may not have it's own repository, or it may join the monorepo. We may also migrate relevant old issues (feature requests especially) from this repo to a new repo for playground

Archiving the Slack Channel

The Prisma Slack channel for Playground will be going away. In its place is a channel on the GraphiQL Discord Group. Check it out here.

Migrating to the Forthcoming Playground GraphiQL Preset

A migration guide will be provided, as some settings will change, but expect a fairly straighforward transition from the previous settings to the new settings format. We will be using graphql-config 3.0, so be sure to pay mind to the new and improved configuration format!

Many of the same settings that the Prisma GraphQL VSCode Extension (which also uses the Official LSP) currently supports will also be supported, such as custom directives, custom scalars, custom types, "hidden" fragments, custom parsing rules and more (further documentation forthcoming).

Call for a Playground Preset Team

The playground preset will need a team of contributors to help develop and maintain the playground specific preset and plugins - the doc explorer, headers tab, tracing, etc.

They will be in charge of managing the entire playground in a product sense as well, and should consult with playground users here to ensure that the product continues to improve at the direction of the graphql playground user community.

Initially, they can help advance the core GraphiQL Plugin API (https://github.com/graphql/graphiql/issues/983) for these purposes, and should be able to begin developing the custom preset as soon as the first [email protected] lands.

Get Updates

If you want to be part of the Playground Preset team, subscribe to https://github.com/graphql/graphiql/issues/1443 and the plugin API meta-issue referenced above

jasonkuhrt avatar Apr 01 '20 18:04 jasonkuhrt

Blog post has been published! https://foundation.graphql.org/news/2020/04/03/web-based-graphql-ides-for-the-win-how-why-playground-graphiql-are-joining-forces/

jasonkuhrt avatar Apr 03 '20 03:04 jasonkuhrt

anyone who wants to help with security and bugfixes today, you can find me on our discord channel for playground: https://discord.gg/8RQK2F, I'm about to introduce a PR that re-introduces yarn workspaces to make the security fixes, because it was causing an issue where tons of yarn.lock entries could only be removed manually, it would seem? without just deleting and re-writing the lockfile again. and when i tried deleting the lockfile, the sub-package dependencies didn't install :/ any reviews on my or other bugfix/security PRs today would be super helpful, regardless of whether your review is an official approval or not.

acao avatar Apr 03 '20 14:04 acao

The Discord invites in your posts have expired. @acao @jasonkuhrt

oliversalzburg avatar Sep 09 '20 08:09 oliversalzburg

@oliversalzburg https://github.com/graphql/graphql-playground#help--community- links to discord, hopefully up-to-date

mysterybear avatar Oct 05 '20 09:10 mysterybear

hey thanks! been looking for where i need to fix this broken discord link

acao avatar Oct 07 '20 18:10 acao

fixed the discord link, sorry folks. so many links to maintain, lol

acao avatar Oct 07 '20 18:10 acao

This is a horrendous idea and I am struggling to understand why GraphQL makers would want to create such a dependency to where users have to always be online in order to develop. In what world does that make sense?

coolcomfort avatar Oct 14 '21 22:10 coolcomfort

Why would they have to be online? GraphiQL works offline? Please explain?

acao avatar Oct 15 '21 01:10 acao

Their is a plug in to use the local development environment search for it and you can test locally and you can also share it via their playground for some one if you want.

On Fri, 15 Oct 2021, 01:33 coolcomfort, @.***> wrote:

This is a horrendous idea and I am struggling to understand why GraphQL makers would want to create such a dependency to where users have to always be online in order to develop. In what world does that make sense?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/graphql/graphql-playground/issues/1143#issuecomment-943789087, or unsubscribe https://github.com/notifications/unsubscribe-auth/AK3MBK3AEWKE4BFJDFTMXP3UG5LBZANCNFSM4LZK4XYQ .

LeulAria avatar Oct 15 '21 04:10 LeulAria

Why would they have to be online? GraphiQL works offline? Please explain?

I believe it's is because I had to add new playground address https://studio.apollographql.com into CORS in order to make it work, The old one does not require that, which raise the some security concern about the new playground. I was also confused at the beginning and quickly figure it out, and decided to add the playground as the following

    if (!__prod__) corsOriginList.push("https://studio.apollographql.com");

aboveyunhai avatar Dec 16 '21 17:12 aboveyunhai

We've decided it no longer makes sense to merge the projects, though they will continue to use tons of shared logic in the form of the editor mode. It made sense at the time that Prisma offered playground to us, but it's clear the community wants to move this project forward.

I made a proposal to this effect a year ago, where we were imagining a re-built playground called "graphql-ide" using monaco-graphql and other components from the react sdk that graphiql uses.

The playground community is free to choose whether they would like to:

  • continue with this codebase
  • rewrite the editor in modern react with a different CSS, state management, etc

other choices

  • monaco-graphql or codemirror-graphql? this does not require a ground-up rewrite, and would potentially simplify some of the state management.
  • publish the electron app again? run an almost-free update server on cf workers or with our existing netlify account using functions (lambdas)?
  • really anything!

We are seeking maintainers to review PRs and help steer the direction of the project here:

https://github.com/graphql/graphql-playground/issues/1366

acao avatar Feb 08 '22 17:02 acao

@schickling are you still interested in coming back to the project?

acao avatar Feb 21 '22 21:02 acao

Thanks for pinging me about this @acao.

Unfortunately I don't really have the time right now to contribute to the project in any meaningful way but I'm very happy to see that the project is still being pushed forward as I really enjoyed working on the early versions of GraphQL Playground. I think there's still a lot of untapped potential which we explored in the designs for V2 back a few years ago. Thanks for your work on this! ❤️

schickling avatar Feb 21 '22 22:02 schickling

For reference: https://github.com/graphql/graphql-playground/issues/1366#issuecomment-1062088978

timsuchanek avatar Mar 08 '22 18:03 timsuchanek