This project has been renamed to
benzene
. https://github.com/hoangvvo/benzene
Graphyne
A lightning-fast JavaScript GraphQL Server, featuring:
- Caching of query validation and compilation with LRU strategy.
- Highly performant Just-In-Time compiler via graphql-jit.
- Lightweight, non-opinionated, and non-coupled integration with great extensibility: Does nothing more but returning handler functions to integrate into framework' routers, web workers, or
ws
.
Why
Graphyne
uses graphql-jit
under the hood to compile queries into optimized functions that significantly improve performance (more than 10 times better than graphql-js
). By furthur caching the compiled queries in memory using a LRU strategy, Graphyne
manages to become lightning-fast.
Examples
See examples.
Packages
Graphyne Server
Fast and simple GraphQL Server for Node.js frameworks.
Graphyne Worker
Run GraphQL execution layer in the browser (Web Workers) and at the edge (Cloudflare Workers®).
Graphyne WebSocket
Add WebSocket support to graphyne-server
. Implements GraphQL over WebSocket Protocol.
Features / TODO
Graphyne
is a work-in-progress. It is obviously not battle-tested and lack several features. My plan for now is to implement the following:
- WebSocket/Subscriptions
- Persisted queries
- Federation
- Gateway
GraphQL execution layer is also bounded by the limitation of graphql-jit. Yet, I have been using it in production and see no problems for my use-cases.
Contributing
Please see my contributing.md.