expedient
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

Expedient

The name for this library is a synonym of scheme and was chosen because some forms of its definition are "Beneficial or being of advantage in a given circumstance" and "Having, showing, or done with good judgment or sense" or "Capable of working successfully" which although this library may not achieve, it tries to be a small and quick way to make functional and working graphql schemas

Usage

npm i expedient or yarn add expedient

import {e} from "expedient";

const query = e.buildObject("Query", [
    e.buildField(
        "ping; For rount-trip calculation purposes",
        GraphQLString,
        () => "pong",
    ),
]);

const schema = e.buildSchema(query);

// do something with the schema;

See a full blown example in test.ts

I haven't written documentation for this library yet, however, if you are using typescript in a capable ide, you should be able to use it pretty easily. Every type has the word build before it. E.g. for an interface e.buildInterface(), for a field e.buildField() with the only exceptions being for the query, mutation, and subscription objects which you should use e. buildObject() for and is what e.buildSchema() expects.

Info strings

You'll notice a type called InfoString is used a lot in this package, this represents a single string that is used as the name and description, if using typescript 4.2 or newer, it should warn you when this is wrong. The format goes Name or Name; Description (the space after the semicolon is optional)

Readme

Keywords

Package Sidebar

Install

npm i expedient

Weekly Downloads

0

Version

0.0.1

License

MIT

Unpacked Size

23.1 kB

Total Files

10

Last publish

Collaborators

  • floffah