GitHub Hot Board

GitHub Hot Board · Archivo del repositorio

graphql-go/graphql

An implementation of GraphQL for Go / Golang (Esta descripción procede del propio repositorio.)

Datos al October 25graphql-go

Mejor puesto

#442

Histórico · Go por idioma

10K

Estrellas totales

850

Forks totales

0

Días en rankings (30 d)

Estado del proyectoLicencia: MITÚltimo push: June 23Issues abiertos (PR incl.): 247

Recolectado desde 2026-10-25; desconocido = aún no recopilado

Pon la insignia en tu README · graphql-go/graphql[![Pon la insignia en tu README](https://git.vaiox.xyz/api/badge/graphql-go/graphql.svg)](https://git.vaiox.xyz/es/repo/graphql-go/graphql)
<a href="https://git.vaiox.xyz/es/repo/graphql-go/graphql"><img src="https://git.vaiox.xyz/api/badge/graphql-go/graphql.svg" alt="Pon la insignia en tu README" height="20"></a>

Documentación del proyecto

graphql CircleCI Go Reference Coverage Status Join the chat at https://gitter.im/graphql-go/graphql

An implementation of GraphQL in Go. Follows the official reference implementation graphql-js.

Supports: queries, mutations & subscriptions.

Documentation

godoc: https://pkg.go.dev/github.com/graphql-go/graphql

Contribute Back

Friendly reminder links are available in case you would like to contribute back into our commitment with Go and open-source.

Author PayPal Link
Hafiz Ismail Not available yet.
Chris Ramón https://www.paypal.com/donate/?hosted_button_id=WHUQQYEMTRQBJ

Getting Started

To install the library, run:

go get github.com/graphql-go/graphql

The following is a simple example which defines a schema with a single hello string-type field and a Resolve method which returns the string world. A GraphQL query is performed against this schema with the resulting output printed in JSON format.

package main

import (
	"encoding/json"
	"fmt"
	"log"

	"github.com/graphql-go/graphql"
)

func main() {
	// Schema
	fields := graphql.Fields{
		"hello": &graphql.Field{
			Type: graphql.String,
			Resolve: func(p graphql.ResolveParams) (interface{}, error) {
				return "world", nil
			},
		},
	}
	rootQuery := graphql.ObjectConfig{Name: "RootQuery", Fields: fields}
	schemaConfig := graphql.SchemaConfig{Query: graphql.NewObject(rootQuery)}
	schema, err := graphql.NewSchema(schemaConfig)
	if err != nil {
		log.Fatalf("failed to create new schema, error: %v", err)
	}

	// Query
	query := `
		{
			hello
		}
	`
	params := graphql.Params{Schema: schema, RequestString: query}
	r := graphql.Do(params)
	if len(r.Errors) > 0 {
		log.Fatalf("failed to execute graphql operation, errors: %+v", r.Errors)
	}
	rJSON, _ := json.Marshal(r)
	fmt.Printf("%s \n", rJSON) // {"data":{"hello":"world"}}
}

For more complex examples, refer to the examples/ directory and graphql_test.go.

Third Party Libraries

Name Author Description
graphql-go-handler Hafiz Ismail Middleware to handle GraphQL queries through HTTP requests.
graphql-relay-go Hafiz Ismail Lib to construct a graphql-go server supporting react-relay.
golang-relay-starter-kit Hafiz Ismail Barebones starting point for a Relay application with Golang GraphQL server.
dataloader Nick Randall DataLoader implementation in Go.

Blog Posts

Clasificaciones actuales

Evolución de los últimos 30 días

Sin registros en los últimos 30 días.

Proyectos similares · temas compartidos

← Volver a los rankings