1.0.5 • Public • Published

    Simpl To GraphQL Schema

    This is new updated and improved fork of # Simple Schema - GraphQL Schema Bridge except it doesn't build your resolvers.

    Change only your Meteor Simple Schema: GraphQL schema are updated automatically.

    Define your Simple Schemas for your collection and let simpl-to-graphql-schema do the tedious work of defining the schema's basic fields and resolvers, for you.

    This tool works with Meteor Framework.

    • Installation

    npm install --save simpl-to-graphql-schema

    • Your simple schema
    import SimpleSchema from 'simpl-schema';
    import { Mongo } from 'meteor/mongo';
    // Define your collection
    const Items = new Mongo.Collection('items');
    //build your schema with SimpleSchema as usual
    const Schemas = new SimpleSchema({
      _id: {
        type: String,
      name: {
        type: String,
        label: "Item name",
      ownerId: {
        type: String,
        label: "Owner identification",
      createdAt: {
        type: String,
        label: "Item creation date",
      updatedAt: {
        type: String,
        label: "Item last update",
    export default Schemas;
    • Your GraphQL schema
    import SimpleToGraphql from 'simpl-to-graphql';
    import Schemas from './items';
    const schemaGql = SimpleToGraphql.schema({ 
    	// Your simple schema
    	schema: Schemas, 
    	// your grapqhl schema name
    	name: 'Items', 
    	// SimpleToGraphql options
    	options: {
    		// create schema only for those fields in an Array
    		fields: ['name', 'ownerId', 'createdAt'],
    		// insert scalars in an Array	
    		scalar: ['Date'],
    		// create schema except for those fields in an Array
            except: ['updatedAt'],
            // change fields type
            custom: {
                createdAt: "Date",
                updatedAt: "Date"
    		// add fields to your generated schema
    		additional: [
    			'checked: Boolean'
    			'usersList: [Users]'
    		// console.log() your generated schema
    		print: true, //default false
    export default schemaGql;
    • Your resolvers
    //in case your want to use the built in Date scalar
    import { DateScalar } from 'simpl-to-graphql';
    // collections
    import Items from '/imports/api/pages/pages'
    export default {
        Query: {
          item: (root, args, { userId }) => Items.findOne({ ownerId: userId }),
          items: (root, args, { userId }) => Items.find({ ownerId: userId }).fetch(),
        // you can put it here or in your merge of resolvers with DateScalar
        Date: DateScalar.Date


    npm i @panter/simpl-to-graphql-schema

    DownloadsWeekly Downloads






    Unpacked Size

    18.9 kB

    Total Files


    Last publish


    • remolueoend
    • macrozone
    • claudiocro
    • blurri