federation VS graphql-multipart-request-spec

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

federation

🌐  Build and scale a single data graph across multiple services with Apollo's federation gateway. (by apollographql)

graphql-multipart-request-spec

A spec for GraphQL multipart form requests (file uploads). (by jaydenseric)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
federation graphql-multipart-request-spec
3 11
647 981
0.8% -
9.4 1.5
about 20 hours ago about 1 month ago
TypeScript
GNU General Public License v3.0 or later -
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.

federation

Posts with mentions or reviews of federation. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-29.
  • Apollo Federation Custom Scalars
    1 project | /r/graphql | 9 Apr 2023
    I feel like we ran into this recently at work but not with custom scalars etc. My colleague raised an issue for it. Hope this helps in some way.
  • Apollo Federation Input type union merge
    1 project | /r/graphql | 5 Oct 2022
    as per the Github issue here. However I have trouble understanding this statement. Why can't the gateway pick and choose which input fields are routed to each subgraph? Isn't it the responsibility of the supergraph SDL and the gateway to do exactly this, this same way it does for entities? What limitations are there that make merging input types using the union strategy not viable?
  • The Stack #3
    22 projects | dev.to | 29 Jul 2021
    Federation comes with its own specification and directives as part of it which helps people to define all of the relations between multiple GraphQL entities so that the Apollo Gateway can combine them all together without having to modify the GraphQL gateway and also functions like __resolveReference which helps in resolving an entity with its reference as specified by the directives.

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 federation and graphql-multipart-request-spec you can also consider the following projects:

jaeger - CNCF Jaeger, a Distributed Tracing Platform

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

mercurius - Implement GraphQL servers and gateways with Fastify

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

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.

supergraph-demo - 🍿 Compose subgraphs into a Federation v1 supergraph at build-time with static composition to power a federated graph router at runtime.

graphiql - GraphiQL & the GraphQL LSP Reference Ecosystem for building browser & IDE tools.

graphql-editor - 📺 Visual Editor & GraphQL IDE.

subscriptions-transport-ws - :arrows_clockwise: A WebSocket client + server for GraphQL subscriptions

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