4 repository-uri
Logic for comparing GraphQL types to determine identity, nullability, and subtyping relationships.
Distinguishing note: Candidates focus on inference or model generation, not the runtime comparison of two type definitions.
Explore 4 awesome GitHub repositories matching web development · GraphQL Type Analysis. Refine with filters or upvote what's useful.
This project is a GraphQL implementation for Go, providing a complete suite for building GraphQL servers. It includes a schema engine for defining types, a query parser to convert strings into abstract syntax trees, and an execution engine that resolves fields against a defined schema to return structured data. The library distinguishes itself through reflection-based type mapping, allowing object definitions and arguments to be derived directly from native Go structs. It also supports the execution of real-time data streaming via GraphQL subscriptions and provides an extensible execution pip
Evaluates whether two types are identical or if one is a subtype of another while accounting for nullability and lists.
GraphQL Voyager is a schema visualizer and data model explorer that provides an interactive graph representation of a GraphQL API. It serves as a documentation tool for inspecting types and fields by transforming schema introspection data into a visual interface. The tool maps the relationships between different types and fields, allowing for the analysis of complex data models and their connections. Users can filter the visual representation to remove deprecated fields or wrapper classes and use a dedicated information panel to examine technical specifications for specific data types.
Provides an information panel to examine detailed technical specifications for specific data types in the schema.
Intercepts and displays GraphQL request and response details for real-time troubleshooting.
GraphQL-Ruby este o bibliotecă Ruby pentru construirea de API-uri GraphQL cu o schemă puternic tipizată și un motor dedicat de execuție a interogărilor. Aceasta oferă un framework cuprinzător pentru maparea obiectelor aplicației la un sistem formal de tipuri, permițând preluarea structurată a datelor prin resolver-e definite. Proiectul se distinge prin mecanisme avansate de performanță și livrare, inclusiv un data loader pentru batching și caching, menit să prevină tiparele de interogare N+1. Suportă livrarea de date de înaltă performanță prin streaming incremental de răspunsuri, răspunsuri amânate la interogări și preluarea paralelă a datelor folosind fibers. În plus, oferă suport nativ pentru convențiile Relay, inclusiv helper-e specializate pentru conexiuni și identificarea obiectelor. Biblioteca acoperă o suprafață largă de gestionare a API-urilor, incluzând controlul accesului granular, versionarea schemei pentru a menține compatibilitatea backward și actualizări în timp real prin subscripții. Include, de asemenea, instrumente de gestionare a traficului pentru a proteja resursele serverului, cum ar fi limitarea complexității interogărilor și limitarea ratei de cereri. Dezvoltarea și observabilitatea sunt susținute prin instrumente de analiză AST, tracing de execuție și utilitare de testare specializate pentru verificarea încărcării în loturi (batch loading).
Retrieves a programmatic list of modifications to audit additions or removals within the schema.