Transform prisma datamodel SDL into graphql-js SDL

Usage no npm install needed!

<script type="module">
  import prismaGenerateSchema from '';



This module is capable of generating a prisma OpenCRUD schema for a given datamodel, given in SDL.


Development uses typescript, npm, yarn and jest.

npm run test


Basic Usage:

import { generateCRUDSchemaString } from 'prisma-generate-schema'

const openCRUDSchema = generateCRUDSchemaString(modelInSDL)

Project Structure

This section is intended for maintainers.

First, a datamodel is parsed using the Parser class from prisma-datamodel, Then, an OpenCRUD schema is created using the SchemaGenerator.

The schema generator utilizes several other generators to generate the mutation, query and subscription objects and all corresponding types. A Generator is usually responsible for a single type only but will access other generators to recursively build the schema. All generators which return object types implement lazy evaluation and caching of generated types via their base class. The generators can be configured using dependency injection, if needed, to switch out the implementation for certain types in the schema.

All default generators, i.e. generators for a relational model, one for each type that can occur in an OpenCRUD schema, can ge found in the DefaultGenerators class.

All special document generators, i.e. generators for a document model, can ge found in the DocumentGenerators class.