Epam.GraphQL is a set of .NET libraries which provides a high-level way for building GraphQL APIs with a few lines of code, including (but not limited to) CRUD, batching, complex sorting and filtering, pagination. We have built Epam.GraphQL on top of GraphQL.NET to simplify developing GraphQL API layer:
- It is used by a dozen internal EPAM applications, battle-tested on complex tasks
- Highly declarative; can be seen as Low-Code platform done right
- Serves as architecture backbone for the whole app
- Makes APIs aligned and metadata-rich – allowing future features like admin UI generation
- Supports EntityFrameworkCore (e.g. querying only necessary fields from the database, disable change tracking when needed)
- Declarative CRUD (but you can write your own manual mutations as well)
- Gracefully solves N+1 problem by nested entities query batching with zero boilerplate code (but you can write your batches by yourself)
- Relay connections out-of-the-box
- Declarative filtering and search
- Declarative sorting
- Entity auto-mapping
- Master-details relationship between entities with a few lines of code
- Security
- ... and many more
- Get Started
- Core Concepts
- Querying Data
- Entity Framework Core Usage
Package | Downloads | NuGet Latest |
---|---|---|
Epam.GraphQL | ||
Epam.GraphQL.EntityFrameworkCore | ||
Epam.GraphQL.MiniProfiler | ||
Epam.GraphQL.SystemTextJson | ||
Epam.GraphQL.NewtonsoftJson |