Nonflavored Prescription Medicine

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

    1.1.0 • Public • Published

    Nexus

    trunk npm version

    Declarative, code-first and strongly typed GraphQL schema construction for TypeScript & JavaScript.

    Installation

    npm install nexus graphql
    

    Note you must also add graphql. Nexus pins to it as a peer dependency.

    Features

    • Expressive, declarative API for building schemas
    • Full type-safety for free
    • Powerful plugin system
    • No need to re-declare interface fields per-object
    • Optionally possible to reference types by name (with autocomplete)
      Rather than needing to import every single piece of the schema
    • Interoperable with vanilla graphql-js types, and it's just a GraphQLSchema
      So it fits in just fine with existing community solutions of apollo-server, graphql-middleware, etc.
    • Inline function resolvers
      For when you need to do simple field aliasing
    • Auto-generated graphql SDL schema
      Great for when seeing how any code changes affected the schema
    • DRY-up schema design
      Create higher level "functions" which wrap common fields

    Example

    import { queryType, stringArg, makeSchema } from 'nexus'
    import { GraphQLServer } from 'graphql-yoga'
    
    const Query = queryType({
      definition(t) {
        t.string('hello', {
          args: { name: stringArg() },
          resolve: (parent, { name }) => `Hello ${name || 'World'}!`,
        })
      },
    })
    
    const schema = makeSchema({
      types: [Query],
      outputs: {
        schema: __dirname + '/generated/schema.graphql',
        typegen: __dirname + '/generated/typings.ts',
      },
    })
    
    const server = new GraphQLServer({
      schema,
    })
    
    server.start(() => `Server is running on http://localhost:4000`)

    More examples can be found in the /examples directory:

    Documentation

    You can find the docs for Nexus here.

    Migrate from SDL

    If you've been following an SDL-first approach to build your GraphQL server and want to see what your code looks like when written with GraphQL Nexus, you can use the SDL converter.

    Install

    npm i nexus

    Homepage

    nexusjs.org/

    DownloadsWeekly Downloads

    57,805

    Version

    1.1.0

    License

    MIT

    Unpacked Size

    2.09 MB

    Total Files

    366

    Last publish

    Collaborators

    • tgriesser
    • schickling
    • jasonkuhrt
    • weakky