All Projects → mercurius-js → Mercurius

mercurius-js / Mercurius

Licence: mit
Implement GraphQL servers and gateways with Fastify

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Mercurius

Federation
Apollo Federation
Stars: ✭ 171 (-75.71%)
Mutual labels:  graphql, gateway, federation
Wp Graphql Acf
WPGraphQL for Advanced Custom Fields
Stars: ✭ 358 (-49.15%)
Mutual labels:  graphql, hacktoberfest
Open Sauced
🍕 This is a project to identify your next open source contribution.
Stars: ✭ 352 (-50%)
Mutual labels:  graphql, hacktoberfest
Enterprise gateway
A lightweight, multi-tenant, scalable and secure gateway that enables Jupyter Notebooks to share resources across distributed clusters such as Apache Spark, Kubernetes and others.
Stars: ✭ 412 (-41.48%)
Mutual labels:  hacktoberfest, gateway
Parse Dashboard
A dashboard for managing your Parse Server Apps
Stars: ✭ 3,534 (+401.99%)
Mutual labels:  graphql, hacktoberfest
Askql
AskQL is a query language that can express any data request
Stars: ✭ 352 (-50%)
Mutual labels:  graphql, hacktoberfest
Parse Server
API server module for Node/Express
Stars: ✭ 19,165 (+2622.3%)
Mutual labels:  graphql, hacktoberfest
Social
🎉 Social can be used for work, or to connect to the fediverse!
Stars: ✭ 302 (-57.1%)
Mutual labels:  hacktoberfest, federation
Graphql Engine
Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.
Stars: ✭ 24,845 (+3429.12%)
Mutual labels:  graphql, hacktoberfest
Cookiecutter Django Vue
Cookiecutter Django Vue is a template for Django-Vue projects.
Stars: ✭ 462 (-34.37%)
Mutual labels:  graphql, hacktoberfest
Learn Graphql
Real world GraphQL tutorials for frontend developers with deadlines!
Stars: ✭ 586 (-16.76%)
Mutual labels:  graphql, hacktoberfest
Graphback
Graphback - Out of the box GraphQL server and client
Stars: ✭ 323 (-54.12%)
Mutual labels:  graphql, hacktoberfest
Gatsby Woocommerce Themes
⚡ A Gatsby Theme for WooCommerce E-commerce site Gatsby WooCommerce WordPress
Stars: ✭ 306 (-56.53%)
Mutual labels:  graphql, hacktoberfest
Zwave2mqtt
Fully configurable Zwave to MQTT gateway and Control Panel using NodeJS and Vue
Stars: ✭ 352 (-50%)
Mutual labels:  hacktoberfest, gateway
Altair
✨⚡️ A beautiful feature-rich GraphQL Client for all platforms.
Stars: ✭ 3,827 (+443.61%)
Mutual labels:  graphql, hacktoberfest
Villus
🏎 A tiny and fast GraphQL client for Vue.js
Stars: ✭ 378 (-46.31%)
Mutual labels:  graphql, hacktoberfest
Testing Nestjs
A repository to show off to the community methods of testing NestJS including Unit Tests, Integration Tests, E2E Tests, pipes, filters, interceptors, GraphQL, Mongo, TypeORM, and more!
Stars: ✭ 685 (-2.7%)
Mutual labels:  graphql, hacktoberfest
Armeria
Your go-to microservice framework for any situation, from the creator of Netty et al. You can build any type of microservice leveraging your favorite technologies, including gRPC, Thrift, Kotlin, Retrofit, Reactive Streams, Spring Boot and Dropwizard.
Stars: ✭ 3,392 (+381.82%)
Mutual labels:  hacktoberfest, gateway
Vulcain
Fast and idiomatic client-driven REST APIs.
Stars: ✭ 3,190 (+353.13%)
Mutual labels:  graphql, hacktoberfest
Graphqlmap
GraphQLmap is a scripting engine to interact with a graphql endpoint for pentesting purposes.
Stars: ✭ 434 (-38.35%)
Mutual labels:  graphql, hacktoberfest

mercurius

CI workflow

Mercurius is a GraphQL adapter for Fastify

Features:

  • Caching of query parsing and validation.
  • Automatic loader integration to avoid 1 + N queries.
  • Just-In-Time compiler via graphql-jit.
  • Subscriptions.
  • Federation support.
  • Federated subscriptions support.
  • Gateway implementation, including Subscriptions.
  • Batched query support.
  • Customisable persisted queries.

Docs

Install

npm i fastify mercurius

The previous name of this module was fastify-gql (< 6.0.0).

Quick Start

'use strict'

const Fastify = require('fastify')
const mercurius = require('mercurius')

const app = Fastify()

const schema = `
  type Query {
    add(x: Int, y: Int): Int
  }
`

const resolvers = {
  Query: {
    add: async (_, { x, y }) => x + y
  }
}

app.register(mercurius, {
  schema,
  resolvers
})

app.get('/', async function (req, reply) {
  const query = '{ add(x: 2, y: 2) }'
  return reply.graphql(query)
})

app.listen(3000)

Examples

Check GitHub repo for more examples.

Acknowledgements

The project is kindly sponsored by:

The Mercurius name was gracefully donated by Marco Castelluccio. The usage of that library was described in https://hacks.mozilla.org/2015/12/web-push-notifications-from-irssi/, and you can find that codebase in https://github.com/marco-c/mercurius.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].