12 repository-uri
The practical implementation of server-side GraphQL interfaces to provide data to clients.
Distinct from GraphQL API Design: Distinct from GraphQL API Design by focusing on the technical implementation and exposure rather than the architectural design.
Explore 12 awesome GitHub repositories matching web development · GraphQL API Implementations. Refine with filters or upvote what's useful.
express-graphql este o implementare de server API GraphQL și middleware HTTP care conectează o schemă GraphQL la un server HTTP. Acesta oferă un parser de cereri pentru a extrage interogări și variabile din diverse tipuri de conținut și un furnizor de context pentru a injecta datele cererii HTTP și starea sesiunii în funcțiile resolver. Biblioteca include un IDE interactiv bazat pe browser care detectează cererile GET pentru a servi o interfață HTML pentru testarea interogărilor și inspectarea răspunsurilor. De asemenea, suportă un pipeline de execuție personalizat, permițând suprascrierea funcțiilor implicite de parsare, validare, execuție și formatare a erorilor. Proiectul acoperă integrarea API prin middleware și parsarea parametrilor cererii, alături de o arhitectură pentru validarea interogărilor bazată pe AST și execuția bazată pe schemă. Mai mult, oferă mecanisme pentru extinderea metadatelor de răspuns și aplicarea regulilor de validare pentru a restricționa anumite câmpuri sau operațiuni.
Implements server-side GraphQL interfaces to allow clients to request specific data based on a schema.
GraphQL.NET este un framework server-side pentru construirea și executarea API-urilor GraphQL în aplicații C#. Acesta oferă un toolkit cuprinzător pentru construirea schemelor, un motor federat pentru grafuri de date distribuite și un handler de subscripții pentru gestionarea fluxurilor de date în timp real. Proiectul se distinge printr-un constructor de scheme flexibil care suportă atât definiții programatice code-first, cât și abordări declarative schema-first folosind limbajul standard de definire a schemelor. Include un motor de federare dedicat pentru a diviza grafurile de date în subgrafuri și a le compune într-un gateway unificat, precum și o implementare de data loader concepută special pentru a rezolva problema interogărilor N+1 prin batching și caching. Framework-ul acoperă o gamă largă de capabilități operaționale, inclusiv integrarea dependency injection pentru gestionarea duratei de viață a serviciilor, pipeline-uri middleware pentru interceptarea rezoluției câmpurilor și un pipeline de execuție optimizat cu tipuri de valoare pentru a reduce alocările de memorie. De asemenea, oferă instrumente pentru analiza complexității interogărilor, caching-ul documentelor și controlul accesului bazat pe roluri pentru securizarea endpoint-urilor API. Suportul pentru compilarea schemelor ahead-of-time permite framework-ului să ruleze în medii care interzic generarea dinamică de cod.
Provides a comprehensive toolkit for implementing server-side GraphQL interfaces using both code-first and schema-first approaches.
Juniper este o bibliotecă de server GraphQL și un motor de scheme pentru Rust. Oferă un toolkit pentru construirea de API-uri type-safe prin maparea structurilor de date native Rust către obiecte, input-uri și scalari GraphQL. Proiectul funcționează ca un motor de execuție care poate procesa interogări și mutații fie printr-un server de rețea, fie ca un motor headless pentru execuție locală. Biblioteca este agnostică față de runtime, permițându-i să facă legătura între procesarea GraphQL și diverse framework-uri web asincrone Rust. Include un framework de subscripții care gestionează conexiunile WebSocket persistente pentru a trimite actualizări de date în timp real către clienți. Motorul acoperă o suprafață largă de capabilități, inclusiv exportul limbajului de schemă, gestionarea contextului de stare partajată pentru dependency injection și o abordare code-first pentru definirea resolverelor. De asemenea, suportă integrarea tipurilor de date specializate, cum ar fi zecimalele și timestamp-urile, pentru a evita conversiile manuale de date.
Provides a full toolkit for implementing type-safe GraphQL APIs by mapping native Rust structures to a schema.
Acest proiect este o bibliotecă de referință și o colecție de tipare de cod exemplificative pentru implementarea infrastructurii cloud folosind AWS CDK. Oferă un set de proiecte eșantion care demonstrează cum să definești resurse de calcul, stocare și rețea folosind limbaje de programare de uz general. Biblioteca include implementări de referință pentru diverse tipare arhitecturale, inclusiv backend-uri serverless cu API-uri GraphQL și WebSocket, orchestrarea containerelor cu load balancers și auto-scaling, și găzduirea globală de site-uri web statice prin rețele de livrare a conținutului (CDN). De asemenea, oferă design-uri pentru topologii de rețea izolate și automatizarea fluxurilor de lucru bazate pe evenimente folosind mașini de stare. Capabilitățile acoperite se extind la gestionarea bazelor de date relaționale, configurarea serverelor de transfer securizat de fișiere și implementarea autorizării granulare. În plus, exemplele demonstrează tehnici de personalizare a infrastructurii, cum ar fi suprascrierea proprietăților resurselor și integrarea resurselor personalizate.
Shows how to implement server-side GraphQL interfaces with resolvers for database operations.
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).
Provides a comprehensive implementation of server-side GraphQL interfaces to serve structured data to clients.
graphql-go este o bibliotecă de server pentru implementarea serverelor GraphQL în Go. Oferă infrastructura de bază pentru parsarea schemei, maparea resolver-elor și execuția interogărilor. Biblioteca include un motor de subscripție care permite streaming-ul de date în timp real către clienți folosind transportul WebSocket. Dispune, de asemenea, de un tracer de execuție pentru monitorizarea și profilarea performanței interogărilor prin instrumente de telemetrie. Sistemul gestionează consumul de resurse și stabilitatea printr-un optimizator de interogări care impune restricții de adâncime și controlează concurența resolver-elor. Suportă optimizarea preluării datelor prin prefetching la nivel de câmp pentru a reduce cererile repetitive către baza de date și utilizează un mecanism de transformare a panic-urilor în erori pentru a menține stabilitatea serverului.
Provides a flexible data layer implemented in Go to handle complex GraphQL queries and structured retrieval.
graphql-go este o bibliotecă GraphQL „schema-first” și o implementare de server pentru Go. Oferă un motor de execuție a interogărilor și un parser de schemă care convertește șirurile de definire a schemei în structuri executabile și validează semnăturile resolver-elor. Biblioteca include, de asemenea, o implementare de streaming pentru subscripții GraphQL în timp real folosind canale în cadrul resolver-elor. Proiectul se distinge prin execuția paralelă a resolver-elor pentru a reduce latența cererilor și utilizarea gestionării memoriei prin buffer-pool pentru a reduce overhead-ul garbage collector-ului. Permite crearea de instanțe de schemă clonabile dintr-un arbore de sintaxă partajat pentru a aplica configurații sau suprascrieri unice ale resolver-elor. Biblioteca acoperă domenii largi de capabilități, inclusiv gestionarea schemei cu definiții scalare personalizate și exportul de metadate, precum și securitatea prin limitări de adâncime și complexitate a interogărilor. Oferă, de asemenea, instrumente pentru preluarea eficientă a datelor prin inspecția setului de selecție pentru a preveni interogările N+1, precum și observabilitate prin trasarea execuției și gestionarea panic-urilor în resolver-e.
Provides a full implementation of a server-side GraphQL interface to process queries and return structured data.
backend-cheats is a comprehensive backend engineering reference guide and a collection of technical cheatsheets. It serves as a knowledge base for server-side development, networking, and computer science fundamentals, delivered as a markdown-based static site. The project provides detailed handbooks for API design, specifically covering REST and GraphQL interfaces, and software architecture patterns such as Monolithic, Microservices, and MVC. It includes a database architecture overview comparing relational and NoSQL paradigms, as well as a web security reference for identifying vulnerabilit
Includes technical guides on implementing GraphQL APIs using schemas and types for efficient data retrieval.
Acest proiect este un boilerplate pre-configurat și un proiect seed pentru construirea de aplicații web serverless folosind React și Firebase. Servește ca un template cuprinzător pentru configurarea mediului, rutării și infrastructurii necesare pentru a lansa aplicații single-page. Framework-ul integrează un strat de date folosind GraphQL și Relay pentru a coordona cererile și a menține gestionarea scalabilă a stării. Include un kit de interfață utilizator standardizat bazat pe principiile Material Design și implementează code splitting asincron pentru a reduce payload-urile inițiale ale bundle-ului. Sistemul acoperă gestionarea identității prin integrări Google și OAuth, alături de scripturi CLI automatizate pentru implementarea activelor statice și a funcțiilor în cloud hosting. Oferă, de asemenea, o interfață vizuală pentru executarea și validarea interogărilor GraphQL cu verificare de sintaxă în timp real.
Implements a server-side GraphQL interface to provide structured data to the frontend.
Graphene-Django este un framework de integrare GraphQL și un mapper de schemă utilizat pentru a construi API-uri tipizate pentru aplicații Django. Funcționează ca un strat API de bază de date care transformă câmpurile și relațiile modelelor Django într-o schemă graf, permițând clienților să solicite date specifice într-un singur apel. Proiectul implementează specificația Relay, oferind instrumente pentru identificarea globală a obiectelor și paginare standardizată bazată pe conexiuni pentru a gestiona seturi mari de date. Se distinge prin maparea modelelor de bază de date, formularelor și serializatoarelor direct în tipuri de obiecte și mutații GraphQL. Framework-ul acoperă o gamă largă de capabilități, inclusiv controlul accesului la nivel de câmp, interceptarea cererilor bazată pe middleware și gestionarea operațiunilor în timp real prin rutare WebSocket. Include, de asemenea, utilitare pentru inspecția performanței SQL și wrapping-ul tranzacțiilor de mutație pentru a asigura integritatea datelor în timpul actualizărilor. Un client de test specializat este furnizat pentru a verifica răspunsurile API și a executa query-uri către endpoint.
Implements a full server-side GraphQL interface to expose Django data models and logic via a typed schema.
Acest proiect este un boilerplate de monorepo full stack și șablon de API GraphQL Node.js. Oferă un proiect de bază care integrează un API GraphQL schema-first, o bază de date PostgreSQL și un frontend React într-un singur depozit pentru a partaja tipurile între backend și interfața utilizator. Arhitectura include un wrapper serverless pentru implementarea în cloud și scalare automată. Implementează un strat de batching al cererilor pentru a optimiza performanța bazei de date prin prevenirea problemei interogărilor N+1. Proiectul acoperă gestionarea bazei de date prin versionarea schemei bazată pe migrații și fișiere seed. Include, de asemenea, capabilități pentru integrarea identității utilizatorului, cuprinzând autentificarea, autorizarea și controlul accesului bazat pe permisiuni.
Implements a type-safe, schema-first GraphQL API layer to handle data requests between the client and server.
light-4j is a Java microservices framework designed for building scalable distributed systems. It provides a toolkit for developing cloud-native services with integrated support for service discovery, telemetry, and secure inter-service communication. The project includes a runtime OpenAPI request validator to ensure communication consistency by checking data against formal specifications. It also features an OAuth2 API security gateway for verifying identity tokens and managing credentials, alongside an event-sourcing messaging system for building command query responsibility segregation arc
Implements data-driven GraphQL APIs using generated schemas and a plugin architecture to fetch microservice information.