{"library":"relay-compiler-plus","title":"Relay Compiler Plus","description":"Custom Relay Modern compiler that adds persisted query support, allowing developers to generate query IDs, null query text in production, and a queryMap.json for server-side query resolution. Current version 1.8.3 works with Relay Compiler v1.6 and Node v10. Key differentiator: supports direct compilation from graphql-js schema files (schema.js) in addition to schema.graphql or schema.json, enabling a single-step build pipeline. Last updated 2019, likely inactive.","language":"javascript","status":"maintenance","last_verified":"Fri May 01","install":{"commands":["npm install relay-compiler-plus"],"cli":{"name":"relay-compiler","version":null}},"imports":["import { matchQueryMiddleware } from 'relay-compiler-plus'","npx relay-compiler-plus --schema <path> --src <path>","import queryMapJson from '../queryMap.json'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"// Install\nyarn add relay-compiler-plus\n\n// Generate persisted queries\nNODE_ENV=production npx relay-compiler-plus --schema schema.graphql --src ./src\n\n// Server: use matchQueryMiddleware\nimport express from 'express';\nimport expressGraphql from 'express-graphql';\nimport {matchQueryMiddleware} from 'relay-compiler-plus';\nimport queryMapJson from './queryMap.json';\n\nconst app = express();\napp.use('/graphql',\n  matchQueryMiddleware(queryMapJson),\n  expressGraphql({ schema: MySchema, graphiql: true })\n);\n\n// Client: send queryId instead of query\nfunction fetchQuery(operation, variables) {\n  return fetch('/graphql', {\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json' },\n    body: JSON.stringify({\n      queryId: operation.id, // generated by relay-compiler-plus\n      variables,\n    }),\n  }).then(res => res.json());\n}","lang":"javascript","description":"Demonstrates installation, CLI usage to generate persisted queries, server-side middleware setup, and client fetch modification.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}