gqloom

Weave GraphQL schema and resolvers using Valibot, Zod or Yup

MIT License

Stars
5

GQLoom

English | įŽ€äŊ“中文

GQLoom is a GraphQL weaver for TypeScript/JavaScript that weaves GraphQL Schema and Resolvers using Valibot, Zod, or Yup, and supports sophisticated type inference to provide the best development experience.

The design of GQLoom is inspired by tRPC, TypeGraphQL, Pothos.

Features

  • 🚀 GraphQL: flexible and efficient, reducing redundant data transfers;
  • 🔒 Robust type safety: enjoy intelligent hints at development time to detect potential problems at compile time;
  • 🔋 Ready to go: middleware, contexts, subscriptions, federated graphs are ready to go;
  • 🔮 No extra magic: no decorators, no metadata and reflection, no code generation, you just need JavaScript/TypeScript;
  • 🧩 Familiar schema libraries: use the schema libraries you already know (Zod, Yup, Valibot) to build GraphQL Schema and validate inputs;
  • 🧑‍đŸ’ģ Develop happily: highly readable and semantic APIs designed to keep your code tidy;

Hello World

import { resolver, query, weave } from "@gqloom/valibot"
import * as v from "valibot"

const HelloResolver = resolver({
  hello: query(v.string(), () => "world"),
})

export const schema = weave(HelloResolver)

Read Introduction to learn more about GQLoom.

Getting Started

See Getting Started to learn how to use GQLoom.

In this Repository