graphql-mesh
graphql-mesh copied to clipboard
Project Roadmap
GraphQL-Mesh roadmap
💡 This page's content and the list of tasks is synced automatically from The Guild's Notion. We are open sourcing our roadmap and tasks because we wish to build tools in the public, and allow developers to take part in the process of shaping the future of this library. 🚀 Feel free to share your thoughts, feedback and ideas with us. 👍 If you wish to show interest and help us prioritize tasks, use the 👍 on the issue.
v1
- [x] Convert Fed Supergraph to Fusion
- [ ] Type-safe resolvers as in v0
- [ ] gRPC Transport + Loader
- [ ] https://github.com/Urigo/graphql-mesh/issues/5731
- [x] https://github.com/Urigo/graphql-mesh/issues/6031
Future
- [ ] Move users to Mesh v1
- [x] Content-Length is not passed
- [ ] Compose Federation Subgraphs to our Supergraph spec
- [ ] Experiment Mesh v1 in Acorns GW
- [ ] Clean legacy code in Mesh v1
- [x] Help Productboard with Mesh v1
- [x] Issue with nested recursive input types due to JIT
- [ ] Memory usage + Latency in Azure
- [x] Reorganize the directories, and move legacy Mesh to “legacy” folder
- [ ] Datadog tracing
- [ ] Reproduce HTTP/2 + Render issue
- [ ] GraphClient with Fusion
- [ ] Document modularization of Mesh Config file
- [x] Document Omnigraph OpenAPI as a spec
- [ ] gRPC Transport + Loader
- [ ] OData Handler Refactor and v1 Transport
- [x] Create benchmark comparing Apollo Router, Yoga + Gateway and Apollo Server + Gateway
- [x] Create REST to GraphQL specification
- [ ] Meeting with Glassdoor to get feedback before v1
- [x] Update charly’s examples
- [x] Write a blog post about the optimizations done in Mesh
- [x] Migrate old @whatwg-node/router to FETS in HTTP Handler
- [x] Publish Custom Fetch as a separate NPM Package
- [ ] Rewrite all caching related docs on Envelop, Yoga and Mesh
- [ ] Deploy the latest GraphQL Mesh to production
- [ ] Document this
- [ ] Better document NewRelic plugin
- [ ] Migrate and use GraphQL Mesh
- [x] A question about Mesh returning 401 in case of auth error
- [ ] Complete JSON Schema use case
- [x] Hoist Transform issue
- [ ] Investigate Next.js Edge Runtime support
- [ ] Show metrics / show outgoing requests plugin (inspire by Insomnia?)
- [ ] Enhance Mesh error messages
- [ ] Create Mesh as an Apollo REST Data Source
- [x] Drop Node.js 14 support in our libraries
- [x] Enrich docs: Azure deployment
- [x] https://github.com/ardatan/graphql-tools/issues/4956 :+1: 2
- [ ] https://github.com/ardatan/graphql-mesh/issues/6840
- [x] https://github.com/Urigo/graphql-mesh/pull/5643 :heart: 1
- [x] https://github.com/ardatan/graphql-mesh/issues/6671 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/4278 :eyes: 2
- [x] https://github.com/Urigo/graphql-mesh/issues/4508
- [ ] https://github.com/Urigo/graphql-mesh/issues/4285
- [x] https://github.com/Urigo/graphql-mesh/issues/3449
- [ ] https://github.com/Urigo/graphql-mesh/issues/2891 :+1: 3
- [x] https://github.com/Urigo/graphql-mesh/issues/2103#issuecomment-1516517969 :+1: 5 :eyes: 2
- [x] https://github.com/Urigo/graphql-mesh/pull/5307
- [x] https://github.com/charlypoly/graphql-mesh-docs-first-gateway/issues/31
- [x] https://github.com/Urigo/graphql-mesh/issues/5403
- [x] https://github.com/Urigo/graphql-mesh/issues/5392
- [x] https://github.com/Urigo/graphql-mesh/pull/5333
- [x] https://github.com/Urigo/graphql-mesh/pull/5332
- [x] https://github.com/Urigo/graphql-mesh/pull/5278
- [x] https://github.com/Urigo/graphql-mesh/pull/5261
- [x] https://github.com/Urigo/graphql-mesh/pull/5227
- [x] https://github.com/Urigo/graphql-mesh/pull/5206
- [x] https://github.com/Urigo/graphql-mesh/pull/4896
- [x] https://github.com/Urigo/graphql-mesh/pull/4934
- [x] https://github.com/Urigo/graphql-mesh/pull/2974
- [x] https://github.com/Urigo/graphql-mesh/pull/3915
- [x] https://github.com/Urigo/graphql-mesh/pull/4731
- [x] https://github.com/Urigo/graphql-mesh/pull/5748
- [x] https://github.com/Urigo/graphql-mesh/issues/5334
- [x] https://github.com/Urigo/graphql-mesh/pull/5680
- [x] https://github.com/Urigo/graphql-mesh/issues/5320
- [x] https://github.com/Urigo/graphql-mesh/issues/5312 :+1: 3
- [x] https://github.com/Urigo/graphql-mesh/issues/5350
- [x] https://github.com/Urigo/graphql-mesh/issues/5817
- [ ] https://github.com/Urigo/graphql-mesh/issues/5836 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/5692
- [ ] https://github.com/Urigo/graphql-mesh/issues/5597
- [ ] https://github.com/Urigo/graphql-mesh/issues/5556 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4534
- [ ] https://github.com/Urigo/graphql-mesh/issues/3115 :+1: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/4606
- [x] https://github.com/Urigo/graphql-mesh/issues/4707
- [ ] https://github.com/Urigo/graphql-mesh/issues/4286
- [ ] https://github.com/Urigo/graphql-mesh/issues/4110 :+1: 5
- [ ] https://github.com/Urigo/graphql-mesh/issues/4280
- [ ] https://github.com/Urigo/graphql-mesh/issues/4802
- [ ] https://github.com/Urigo/graphql-mesh/issues/5295
- [ ] https://github.com/Urigo/graphql-mesh/issues/5296
- [ ] https://github.com/Urigo/graphql-mesh/issues/5297
- [ ] https://github.com/Urigo/graphql-mesh/issues/5774 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/5768
- [ ] https://github.com/Urigo/graphql-mesh/issues/5650
- [ ] https://github.com/Urigo/graphql-mesh/issues/5590 :+1: 1 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/5469 :+1: 1 :eyes: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/5277
- [ ] https://github.com/Urigo/graphql-mesh/issues/5275
- [ ] https://github.com/Urigo/graphql-mesh/issues/5232
- [ ] https://github.com/Urigo/graphql-mesh/issues/5229
- [x] https://github.com/Urigo/graphql-mesh/issues/472 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/565
- [ ] https://github.com/Urigo/graphql-mesh/issues/591
- [ ] https://github.com/Urigo/graphql-mesh/issues/882
- [x] https://github.com/Urigo/graphql-mesh/issues/895
- [x] https://github.com/Urigo/graphql-mesh/issues/1071
- [ ] https://github.com/Urigo/graphql-mesh/issues/1257
- [ ] https://github.com/Urigo/graphql-mesh/issues/1472 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/1548
- [ ] https://github.com/Urigo/graphql-mesh/issues/1339
- [ ] https://github.com/Urigo/graphql-mesh/issues/1600
- [ ] https://github.com/Urigo/graphql-mesh/issues/1592
- [ ] https://github.com/Urigo/graphql-mesh/issues/1711
- [ ] https://github.com/Urigo/graphql-mesh/issues/2004 :+1: 2
- [x] https://github.com/Urigo/graphql-mesh/issues/1970
- [ ] https://github.com/Urigo/graphql-mesh/issues/1725
- [x] https://github.com/Urigo/graphql-mesh/issues/2279
- [x] https://github.com/Urigo/graphql-mesh/issues/2491 :eyes: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/1130
- [ ] https://github.com/Urigo/graphql-mesh/issues/2720
- [ ] https://github.com/Urigo/graphql-mesh/issues/2311
- [ ] https://github.com/Urigo/graphql-mesh/issues/2103 :+1: 5 :eyes: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/2968
- [x] https://github.com/Urigo/graphql-mesh/issues/2182
- [ ] https://github.com/Urigo/graphql-mesh/issues/3180
- [ ] https://github.com/Urigo/graphql-mesh/issues/2320
- [ ] https://github.com/Urigo/graphql-mesh/issues/3224 :+1: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/3454 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/3367
- [x] https://github.com/Urigo/graphql-mesh/issues/3471
- [x] https://github.com/Urigo/graphql-mesh/issues/3523 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/3533 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/3711 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/3945
- [ ] https://github.com/Urigo/graphql-mesh/issues/3951 :+1: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/4328
- [ ] https://github.com/Urigo/graphql-mesh/issues/4196
- [ ] https://github.com/Urigo/graphql-mesh/issues/4049
- [ ] https://github.com/Urigo/graphql-mesh/issues/2292
- [x] https://github.com/Urigo/graphql-mesh/issues/4460
- [x] https://github.com/Urigo/graphql-mesh/issues/4456
- [ ] https://github.com/Urigo/graphql-mesh/issues/4512
- [ ] https://github.com/Urigo/graphql-mesh/issues/4562 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4647
- [ ] https://github.com/Urigo/graphql-mesh/issues/4588
- [ ] https://github.com/Urigo/graphql-mesh/issues/3955
- [ ] https://github.com/Urigo/graphql-mesh/issues/4803
- [ ] https://github.com/Urigo/graphql-mesh/issues/4847
- [x] https://github.com/Urigo/graphql-mesh/issues/4881 :+1: 3
- [ ] https://github.com/Urigo/graphql-mesh/issues/4950
- [ ] https://github.com/Urigo/graphql-mesh/issues/4887
- [ ] https://github.com/Urigo/graphql-mesh/issues/4862
- [ ] https://github.com/Urigo/graphql-mesh/issues/4962
- [ ] https://github.com/Urigo/graphql-mesh/issues/5040
- [ ] https://github.com/Urigo/graphql-mesh/issues/4919
- [ ] https://github.com/Urigo/graphql-mesh/issues/5102
- [ ] https://github.com/Urigo/graphql-mesh/issues/5060
- [ ] https://github.com/Urigo/graphql-mesh/issues/5097 :+1: 1 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/5171
- [ ] https://github.com/Urigo/graphql-mesh/issues/5174
- [ ] https://github.com/Urigo/graphql-mesh/issues/5111
- [ ] https://github.com/Urigo/graphql-mesh/issues/5116 :+1: 9 :eyes: 5
- [ ] https://github.com/Urigo/graphql-mesh/issues/5178
- [ ] https://github.com/Urigo/graphql-mesh/issues/5193 :+1: 2 :eyes: 3
- [ ] https://github.com/Urigo/graphql-mesh/issues/5170 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4088
- [ ] https://github.com/Urigo/graphql-mesh/issues/5195
- [ ] https://github.com/Urigo/graphql-mesh/issues/5709
- [ ] https://github.com/Urigo/graphql-mesh/issues/5687
- [x] https://github.com/Urigo/graphql-mesh/issues/5653
- [ ] https://github.com/Urigo/graphql-mesh/issues/5360
- [ ] https://github.com/Urigo/graphql-mesh/issues/5343
- [ ] https://github.com/Urigo/graphql-mesh/issues/5246
- [ ] https://github.com/Urigo/graphql-mesh/issues/779
- [ ] https://github.com/Urigo/graphql-mesh/issues/1351 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/1415
- [ ] https://github.com/Urigo/graphql-mesh/issues/1771
- [x] https://github.com/Urigo/graphql-mesh/issues/1422 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/1930
- [ ] https://github.com/Urigo/graphql-mesh/issues/2156
- [ ] https://github.com/Urigo/graphql-mesh/issues/2155 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/1999
- [ ] https://github.com/Urigo/graphql-mesh/issues/2105 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/1619
- [ ] https://github.com/Urigo/graphql-mesh/issues/2875
- [ ] https://github.com/Urigo/graphql-mesh/issues/2856 :+1: 9
- [ ] https://github.com/Urigo/graphql-mesh/issues/2994
- [ ] https://github.com/Urigo/graphql-mesh/issues/2975 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/3349
- [ ] https://github.com/Urigo/graphql-mesh/issues/3192 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/3508
- [x] https://github.com/Urigo/graphql-mesh/issues/3586
- [ ] https://github.com/Urigo/graphql-mesh/issues/3788
- [ ] https://github.com/Urigo/graphql-mesh/issues/3433 :+1: 4
- [ ] https://github.com/Urigo/graphql-mesh/issues/3886
- [ ] https://github.com/Urigo/graphql-mesh/issues/3960 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4057
- [x] https://github.com/Urigo/graphql-mesh/issues/3913
- [ ] https://github.com/Urigo/graphql-mesh/issues/4087
- [ ] https://github.com/Urigo/graphql-mesh/issues/4118
- [x] https://github.com/Urigo/graphql-mesh/issues/2923 :+1: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/4111
- [ ] https://github.com/Urigo/graphql-mesh/issues/4207 :+1: 1 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4212
- [x] https://github.com/Urigo/graphql-mesh/issues/4284
- [ ] https://github.com/Urigo/graphql-mesh/issues/4301
- [x] https://github.com/Urigo/graphql-mesh/issues/4305 :+1: 2
- [ ] https://github.com/Urigo/graphql-mesh/issues/4345
- [ ] https://github.com/Urigo/graphql-mesh/issues/4363
- [ ] https://github.com/Urigo/graphql-mesh/issues/4386 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/4410
- [ ] https://github.com/Urigo/graphql-mesh/issues/664
- [ ] https://github.com/Urigo/graphql-mesh/issues/1142 :+1: 12
- [ ] https://github.com/Urigo/graphql-mesh/issues/4496
- [ ] https://github.com/Urigo/graphql-mesh/issues/4193
- [ ] https://github.com/Urigo/graphql-mesh/pull/5285
- [ ] https://github.com/Urigo/graphql-mesh/issues/5045
- [ ] https://github.com/Urigo/graphql-mesh/issues/5447
- [ ] https://github.com/Urigo/graphql-mesh/issues/4361
- [ ] https://github.com/Urigo/graphql-mesh/issues/2466 :eyes: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/5199
- [x] https://github.com/Urigo/graphql-mesh/pull/5841 :heart: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/5840
- [x] https://github.com/Urigo/graphql-mesh/issues/5585
- [x] https://github.com/Urigo/graphql-mesh/issues/5581
- [x] https://github.com/Urigo/graphql-mesh/issues/5562 :+1: 4
- [x] https://github.com/Urigo/graphql-mesh/pull/5415 :tada: 1
- [x] https://github.com/Urigo/graphql-mesh/pull/5342 :heart: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/5401
- [x] https://github.com/Urigo/graphql-mesh/pull/5261
- [x] https://github.com/Urigo/graphql-mesh/pull/5408
- [x] https://github.com/Urigo/graphql-mesh/issues/5341 :+1: 3
- [x] https://github.com/Urigo/graphql-mesh/issues/1412 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/3694
- [x] https://github.com/Urigo/graphql-mesh/pull/5252
- [x] https://github.com/Urigo/graphql-mesh/issues/2219
- [x] https://github.com/Urigo/graphql-mesh/issues/3881
- [x] https://github.com/Urigo/graphql-mesh/issues/3966
- [x] https://github.com/Urigo/graphql-mesh/issues/3940
- [x] https://github.com/Urigo/graphql-mesh/issues/4074 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/4089
- [x] https://github.com/Urigo/graphql-mesh/issues/4099
- [x] https://github.com/Urigo/graphql-mesh/issues/4106
- [x] https://github.com/Urigo/graphql-mesh/issues/4126
- [x] https://github.com/Urigo/graphql-mesh/issues/4283
- [x] https://github.com/Urigo/graphql-mesh/issues/4202 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/4293
- [x] https://github.com/Urigo/graphql-mesh/issues/4319
- [x] https://github.com/Urigo/graphql-mesh/issues/4308
- [x] https://github.com/Urigo/graphql-mesh/issues/4346
- [x] https://github.com/Urigo/graphql-mesh/issues/4603 :+1: 7
- [x] https://github.com/Urigo/graphql-mesh/issues/4362
- [x] https://github.com/Urigo/graphql-mesh/issues/4889
- [x] https://github.com/Urigo/graphql-mesh/issues/4895
- [x] https://github.com/Urigo/graphql-mesh/issues/4933
- [x] https://github.com/Urigo/graphql-mesh/issues/4931
- [x] https://github.com/Urigo/graphql-mesh/issues/4953
- [x] https://github.com/Urigo/graphql-mesh/issues/4939
- [x] https://github.com/Urigo/graphql-mesh/issues/4945 :+1: 1
- [x] https://github.com/Urigo/graphql-mesh/issues/4993
- [x] https://github.com/Urigo/graphql-mesh/issues/5029
- [x] https://github.com/Urigo/graphql-mesh/issues/5010
- [x] https://github.com/Urigo/graphql-mesh/pull/5076
Mesh v1
- [x] Readiness and Healthcheck endpoints
OmniGraph OpenAPI
- [x] https://github.com/Urigo/graphql-mesh/issues/5641
ON HOLD
- [ ] Integrate Apollo Federation spec audit
NEW
- [x] https://github.com/Urigo/graphql-mesh/pull/3185 :+1: 1 :rocket: 1
OData Handler
- [ ] https://github.com/Urigo/graphql-mesh/issues/782
- [ ] https://github.com/Urigo/graphql-mesh/issues/787
OData
- [ ] https://github.com/Urigo/graphql-mesh/issues/903
trivago feedback
- [ ] https://github.com/Urigo/graphql-mesh/issues/2782
Feature Request
- [ ] https://github.com/Urigo/graphql-mesh/issues/5848
oData Handler
- [ ] https://github.com/Urigo/graphql-mesh/issues/3770 :+1: 1
- [ ] https://github.com/Urigo/graphql-mesh/issues/3771
- [ ] https://github.com/Urigo/graphql-mesh/issues/944
improvement
- [ ] https://github.com/Urigo/graphql-mesh/issues/1906 :+1: 3 :rocket: 1
MySQL Handler
- [ ] https://github.com/Urigo/graphql-mesh/issues/4002
Feature request
- [ ] https://github.com/Urigo/graphql-mesh/issues/5201
GraphiQL
- [ ] Show metrics / show outgoing requests plugin (inspire by Insomnia?)
v1.x
- [ ] https://github.com/Urigo/graphql-mesh/issues/6030 :eyes: 3
string
- [x] https://github.com/Urigo/graphql-mesh/issues/4741