Package Exports
- ruru-components
 - ruru-components/ruru.css
 
Readme
ruru-components
The React components behind ruru, in case you want to embed Ruru into an existing React project.
PRERELEASE: this is pre-release software; use at your own risk and do not embed into public-facing projects. This will likely change a lot before it's ultimately released. The pre-release nature also explains the shocking lack of documentation.
Usage
For other usage patterns, please see the main ruru package.
import "graphiql/style.css";
import "@graphiql/plugin-explorer/style.css";
import "ruru-components/ruru.css";
// Have Webpack include the Monaco workers
import "graphiql/setup-workers/webpack";
// Or: import "graphiql/setup-workers/vite";
// Or: see "Monaco workers" below
import { Ruru } from "ruru-components";
React.render(<Ruru endpoint="/graphql" />);Monaco workers
If you can't use graphiql/setup-workers/webpack (or
graphiql/setup-workers/vite for Vite) to set up the Monaco workers for you,
then instead add this <script> block to your HTML above your Ruru import:
<script type="module">
  /* Set up monaco workers */
  import createJSONWorker from "https://esm.sh/monaco-editor/esm/vs/language/json/json.worker.js?worker";
  import createGraphQLWorker from "https://esm.sh/monaco-graphql/esm/graphql.worker.js?worker";
  import createEditorWorker from "https://esm.sh/monaco-editor/esm/vs/editor/editor.worker.js?worker";
  globalThis.MonacoEnvironment = {
    getWorker(_workerId, label) {
      switch (label) {
        case "json":
          return createJSONWorker();
        case "graphql":
          return createGraphQLWorker();
        default:
          return createEditorWorker();
      }
    },
  };
</script>