graphiql VS graphql-multipart-request-spec

Compare graphiql vs graphql-multipart-request-spec and see what are their differences.

graphiql

GraphiQL & the GraphQL LSP Reference Ecosystem for building browser & IDE tools. (by graphql)

graphql-multipart-request-spec

A spec for GraphQL multipart form requests (file uploads). (by jaydenseric)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
graphiql graphql-multipart-request-spec
41 11
15,649 981
0.7% -
9.0 1.5
8 days ago about 1 month ago
TypeScript
MIT License -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

graphiql

Posts with mentions or reviews of graphiql. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-15.
  • FLaNK 15 Jan 2024
    21 projects | dev.to | 15 Jan 2024
  • Migrating Netflix to GraphQL Safely
    3 projects | news.ycombinator.com | 14 Aug 2023
    > FYI, GraphiQL is deprecated, GraphQL Playground is a good alternative.

    You have this backwards.

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

    https://github.com/graphql/graphiql

  • Build Smarter, Not Harder: Simplifying Backend Workflows with Build-time GraphQL
    6 projects | dev.to | 26 Jun 2023
    GraphQL is declarative and self-documenting by nature. There’s a single endpoint, and all available data, relationships, and APIs can be explored and consumed by client teams (via the GraphiQL interface or just Introspection) without constantly going back and forth with backend teams.
  • GraphQL IDEs: GraphiQL vs Altair
    2 projects | dev.to | 21 Jun 2023
    GraphiQL is one of the most well-known GraphQL IDEs. Originally developed by Facebook, it is an in-browser tool that enables developers to write, validate, and test GraphQL queries. It is open-source and can be integrated into any project that uses GraphQL. Recently, GraphiQL has been revamped with a new UI and several new features as you can read in ths blog post I wrote earlier.
  • React.dev
    21 projects | news.ycombinator.com | 16 Mar 2023
    Nice! I think you might like it.

    Ah yeah, that does take a while to unpack. I think a lot of the complexity there is dealing with a non-react library and the dynamic import(s). Binding non-react libraries can be a bit rough.

    I do think it's a good example to show the big advantage of hooks, if you look at the use of the hook, super clean: https://github.com/graphql/graphiql/blob/50674292c55eadf0e61...

    Great way to contain complexity and make usage really clean and simple!

  • Is there anything like a GraphQL playground for testing various features of GraphQL?
    2 projects | /r/graphql | 11 Jan 2023
    Graphiql: https://github.com/graphql/graphiql
  • Exploring GraphiQL 2 Updates and New Features
    2 projects | dev.to | 12 Dec 2022
    After GraphQL Playground became part of the GraphQL Foundation, the need for having just one GraphQL IDE became more important. So the GraphQL Foundation decided to merge GraphiQL and GraphQL Playground into one tool. GraphiQL 1 relied on major tech debt and multiple dependencies that were outdated and hard to maintain. With the merge of GraphiQL and GraphQL Playground, the GraphQL Foundation decided to create a new version of GraphiQL, which is now called GraphiQL 2. The design and creation of GraphiQL 2 was all documented in Github.
  • Vue3 + GraphQL : Best way to structure project & queries?
    2 projects | /r/vuejs | 3 Dec 2022
    #3: As I mentioned above, we use GraphQL Code Generator for generating TypeScript types and composables, as well as type checking our queries against the schema. This results in fully type-safe code from the back-end all the way to the front-end. As far as editor extensions go, the GraphQL: Language Feature Support VSCode extension should work fine, I use the language server part of that extension with Neovim. It provides autocompletion based on the schema and diagnostics. It looks like it might not work in .vue files though.
  • React Real Time Messaging With GraphQL
    3 projects | dev.to | 23 Oct 2022
    OneGraphiQL is a data explorer that allows us to build up our GraphQL queries and mutations. It is the OneGraph implementation of GraphiQL, which can be used with any GraphQL endpoint. GraphiQL is the perfect way to discover the different things we can request. It is generated from the GraphQL schema and provides helpful documentation for the graph's queries, mutations and types. Additionally, it can intelligently suggest options while we are building our queries and mutations.
  • Apollo federated graph is not presenting its schema to graphiql with fields sorted lexicographically
    2 projects | /r/graphql | 22 Oct 2022
    If this is a critical functionality, you could raise an issue (with proper reasons why it is important) for sort support either in graphql-js or GraphiQL (guessing this would be a better place) repositories.

graphql-multipart-request-spec

Posts with mentions or reviews of graphql-multipart-request-spec. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-07.
  • How can I upload a file in the GraphQL PLayground?
    3 projects | /r/graphql | 7 Jul 2023
    The GraphQL specification itself doesn't natively support file uploads, so the solution typically involves using extensions or additional libraries. The easiest and most straightforward way is by converting the file to Base64 before sending it to the server, you can include it as a string in the GraphQL request. This offcourse has a downside, it can increase the payload size, so it may not be the most efficient solution for large files. Other options that involve using extensions or additional libraries are using GraphQL multipart request specification and Apollo Server with Apollo Upload Client
  • GraphQL - From Excitement to Deception
    3 projects | /r/programming | 9 Apr 2023
    Also, we manage to upload files via GraphQL just fine. Turns out nothing prevents you from putting a GraphQL query in a multipart form. Frameworks support this just fine, and if not, just write your own middleware, it's not even that hard.
  • Is it possible to pass CSV data to a mutation as an input parameter?
    1 project | /r/graphql | 2 Nov 2022
    There is a specification (and implementation) for sending files through GraphQL. https://github.com/jaydenseric/graphql-multipart-request-spec
  • Forging GraphQL Bombs, the 2022 version of Zip Bombs
    1 project | /r/Pentesting | 12 Aug 2022
    We figured out that it was possible to reference a file several times by implementing the reference spec (https://github.com/jaydenseric/graphql-multipart-request-spec) for both a client and a server. We have no record of this vulnerability used in the wild, but we know for sure that a lot of popular projects on GitHub are vulnerable.
    1 project | dev.to | 12 Aug 2022
    The GraphQL multipart specification describes how to implement file uploads in GraphQL. While usual GraphQL queries are sent as application/json, file uploads are sent as multipart/form-data. This means that the HTTP request body has multiple parts, and their functions, described in the specification, can be summarized as follows:
  • How to set file data in GraphQL variables?
    1 project | /r/graphql | 3 Aug 2022
    Hey, graphql-upload works on top of the graphql-multipart-request-spec, of which you can find the specification here.
  • How to Upload a file to GraphQL with VanillaJS
    1 project | dev.to | 1 Aug 2022
    In this article you will learn the widely accepted method of implementing file upload which is becoming increasingly popular in new apps. The technique follows the specification by @jaydenseric.
  • Announcing GraphQL Yoga 2.0!
    10 projects | dev.to | 29 Mar 2022
    GraphQL-Multipart-Request: enables great file upload support.
  • GraphQL Tools V8 - Stitch Federation Services
    4 projects | dev.to | 29 Jul 2021
    Multipart File Uploads ✔️
  • The Stack #3
    22 projects | dev.to | 29 Jul 2021
    One important thing which GraphQL Spec did not discuss about is a way to transmit files over the wire when using GraphQL. This is where GraphQL Upload comes in. While not an official spec from GraphQL foundation, Jayden had done a great job to put together a multi part spec to address exactly this problem.

What are some alternatives?

When comparing graphiql and graphql-multipart-request-spec you can also consider the following projects:

graphql-playground - 🎮 GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration)

graphql-tools - :wrench: Utility library for GraphQL to build, stitch and mock GraphQL schemas in the SDL-first approach

altair - ✨⚡️ A beautiful feature-rich GraphQL Client for all platforms.

spectaql - Autogenerate static GraphQL API documentation

graphql-live-query - Realtime GraphQL Live Queries with JavaScript

apollo-server - 🌍  Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.

dociql - A beautiful static documentation generator for GraphQL

graphql-editor - 📺 Visual Editor & GraphQL IDE.

Hugo - The world’s fastest framework for building websites.

insomnia - The open-source, cross-platform API client for GraphQL, REST, WebSockets, SSE and gRPC. With Cloud, Local and Git storage.