Cross-platform, typed, and queryable API for Cardano. The project
contains multiple packages for composing GraphQL services to meet
specific application demands, and a docker-compose stack serving the
included cardano-graphql-server Dockerfile and the extended hasura
Dockerfile. The schema is defined in native
.graphql, and used
to generate a TypeScript package for client-side static typing.
Apollo Server exposes the NodeJS execution engine over a HTTP
endpoint, and includes support for open source metrics via Prometheus,
and implementing operation filtering to deny unexpected queries. Should
you wish to have more control over the server, or stitch the schema with
an existing service, consider importing the executable schema from the
@cardano-graphql/api-* packages only.
GraphQL is a query language and execution environment with server and client implementations across many programming languages. The language can be serialized for network transmission, schema implementations hashed for assurance, and is suited for describing most domains.
TypeScript (and JS) has the largest pool of production-ready libraries, developers, and interoperability in the GraphQL and web ecosystem in general. TypeScript definitions for the schema, generated by GraphQL Code Generator, are available on npm.