{"componentChunkName":"component---src-templates-modal-page-js","path":"/graphql-compose","result":{"pageContext":{"node":{"slug":{"current":"graphql-compose"},"name":"GraphQL Compose","githubUrl":"https://github.com/graphql-compose/graphql-compose","description":"Tool which allows you to construct flexible graphql schema from different data sources via plugins.","developer":null,"price":"Free","url":null,"tags":[{"id":"be16bebb-ead8-5ccd-9b12-43490b7a3f4e","name":"JavaScript","slug":{"current":"javascript"}}],"logo":{"asset":{"url":"https://cdn.sanity.io/images/g5bd2nk6/production/92862e478acb8cab73f1664bdaace1cc4e4a9ede-400x400.png"}},"categories":[{"name":"Development Tools","slug":{"current":"development-tools"}}],"_rawContent":[{"_key":"6abf7034543b","_type":"block","children":[{"_key":"6abf7034543b0","_type":"span","marks":["strong"],"text":"graphql-compose"},{"_key":"6abf7034543b1","_type":"span","marks":[],"text":" – provides a type registry with a bunch of methods for programmatic schema construction. It allows not only to extend types but also remove fields, interfaces, args. "},{"_key":"6abf7034543b2","_type":"span","marks":["strong"],"text":"If you want to write your graphql schema generator –"},{"_key":"6abf7034543b3","_type":"span","marks":[],"text":" "},{"_key":"6abf7034543b4","_type":"span","marks":["strong"],"text":"graphql-compose"},{"_key":"6abf7034543b5","_type":"span","marks":[],"text":" "},{"_key":"6abf7034543b6","_type":"span","marks":["strong"],"text":"is a good instrument for you."}],"markDefs":[],"style":"normal"},{"_key":"6b7f8d7d2b72","_type":"block","children":[{"_key":"6b7f8d7d2b720","_type":"span","marks":[],"text":"provides methods for editing GraphQL output/input types (add/remove fields/args/interfaces)"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"c71640794ab0","_type":"block","children":[{"_key":"c71640794ab00","_type":"span","marks":[],"text":"introduces Resolvers – the named graphql fieldConfigs, which can be used for finding, updating, removing records"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"ea31b8958080","_type":"block","children":[{"_key":"ea31b89580800","_type":"span","marks":[],"text":"provides an easy way for creating relations between types via Resolvers"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"c586e6908ade","_type":"block","children":[{"_key":"c586e6908ade0","_type":"span","marks":[],"text":"provides converter from OutputType to InputType"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"26ab090251e8","_type":"block","children":[{"_key":"26ab090251e80","_type":"span","marks":[],"text":"provides projection parser from AST"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"c08ac435ff0e","_type":"block","children":[{"_key":"c08ac435ff0e0","_type":"span","marks":[],"text":"provides GraphQL schema language for defining simple types"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"eee26f768436","_type":"block","children":[{"_key":"eee26f7684360","_type":"span","marks":[],"text":"adds additional types Date, Json"}],"level":1,"listItem":"bullet","markDefs":[],"style":"normal"},{"_key":"d027dd2d0e39","_type":"block","children":[{"_key":"d027dd2d0e390","_type":"span","marks":[],"text":"And a little bit more"}],"markDefs":[],"style":"h4"},{"_key":"b5263f4f630a","_type":"block","children":[{"_key":"b5263f4f630a0","_type":"span","marks":["strong"],"text":"graphql-compose-[plugin]"},{"_key":"b5263f4f630a1","_type":"span","marks":[],"text":" – are "},{"_key":"b5263f4f630a2","_type":"span","marks":["em"],"text":"declarative generators/plugins"},{"_key":"b5263f4f630a3","_type":"span","marks":[],"text":" built on top of graphql-compose, which take some ORMs, schema definitions and create GraphQL Models from them or modify existing GraphQL Types."}],"markDefs":[],"style":"normal"}]},"targetPath":"","modalType":"tool"}},"staticQueryHashes":[]}