graphql-authz VS graphql-public-schema-filter

Compare graphql-authz vs graphql-public-schema-filter and see what are their differences.

graphql-public-schema-filter

Filter your GraphQL graph into a subgraph. Code-first & SDL-first! (by n1ru4l)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
graphql-authz graphql-public-schema-filter
4 8
172 52
1.2% -
4.7 4.2
5 months ago 6 days ago
TypeScript TypeScript
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

graphql-authz

Posts with mentions or reviews of graphql-authz. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-31.
  • Authorization by entities
    2 projects | /r/graphql | 31 Jan 2022
    https://pothos-graphql.dev/docs/plugins/scope-auth https://github.com/AstrumU/graphql-authz
  • GraphQL AuthZ
    1 project | news.ycombinator.com | 23 Dec 2021
    Today we are excited to introduce GraphQL AuthZ - a new open-source library for adding authorization layers on top of your existing GraphQL microservices or monolith backend systems.

    GraphQL AuthZ is a new approach for applying GraphQL native authorization. We are happy that we can finally share this library with the community and keen to learn about the ways it might be used within your next project!

    The announcement is at https://the-guild.dev/blog/graphql-authz and the repo at https://github.com/AstrumU/graphql-authz

  • Introducing GraphQL-AuthZ
    1 project | /r/graphql | 20 Dec 2021
    The announcement is at https://the-guild.dev/blog/graphql-authz and the repo at https://github.com/AstrumU/graphql-authz
  • GraphQL AuthZ - GraphQL Authorization layer
    3 projects | dev.to | 20 Dec 2021
    Compatibility with modern GraphQL technologies providing ways to wrap the graphql.js execute function. Here are a few working examples for Envelop, GraphQL Helix, Apollo Server, and express-graphql.

graphql-public-schema-filter

Posts with mentions or reviews of graphql-public-schema-filter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-31.
  • Public and Private GQL APIs pointing to same Unified graph?
    1 project | /r/graphql | 18 Apr 2023
  • Keeping parts of your GraphQL schema hidden from Introspection
    1 project | /r/graphql | 15 Jun 2022
    We actually built the following package, @n1ru4l/graphql-public-schema-filter which solves the problem stated within the blog post in a similar way (by filtering an existing schema into a subset of the original schema).
  • Authorization by entities
    2 projects | /r/graphql | 31 Jan 2022
    I am using this technique in one of my projects where we have a public API that is a subset of the internal API. I open sourced the library for doing that: https://github.com/n1ru4l/graphql-public-schema-filter
  • Ideas for implementing admin authentication for only a few mutations?
    1 project | /r/graphql | 28 Dec 2021
    I built something similar that is "metaframework"-agnostic https://github.com/n1ru4l/graphql-public-schema-filter. Using this method has its benefits and drawbacks. If you simply public and internal part of the schema it can work pretty well. We use it for hiding the internal API from the public customer facing integration API. It is definetly easier than makntaining two seperate GraphQL schemas. However, if you want full inteospection capabilities doing this can be confusing as the introspection query operation result is different based on the authorization header which moght be weird if you are using tools such as code generators, as you now have to do it for two different schemas.
  • When to use multiple endpoints in GraphQL
    1 project | /r/graphql | 4 Dec 2021
    While building an GraphQL API that powers web applications we introduced a public customer-facing API. Instead of building two separate endpoints we chose to serve a different schema based on the authorization header. Furthermore, requests that do not provide an customer kntegration authorization header are only allowed to execute persisted operations. That way we somehow avoided having multiple HTTP routr endpoints. Instead of building two schemas from scratch and because the public schema is basically a filtered down version of the full graph we decided to filter down the graph using directive annotations on the schema SDL. I open sourced rhe JavaScript library for doing that (which is based upon graphql-tools). The dynamic schema selection based on the authorization header is done with Envelop
  • Any GraphQL issues the community would like to be solved?
    2 projects | /r/graphql | 18 Nov 2021
    graphql-public-schema-filter: This library allows you to filter down you big graphql schema into a smaller subgraph. I have been using this for filtering our big production schema down into a public api schema that our customers use. So they don't have access to all the internal types, that are only for our internal web applications. The great thing about this is that we can just serve the correct schema based on the authorization headers as API users and Web Application tokens differ. If you have one big monolithic GraphQL server this is a great way of doing this and we are quite happy with it.
  • Introducing Envelop - The GraphQL Plugin System
    12 projects | dev.to | 29 Jul 2021
    Public schema filter - for creating a simple GraphQL schema that can be used for public APIs based on existing GraphQL schema.
  • I built a small library for filtering a GraphQL schema graph into a subgraph
    1 project | /r/graphql | 28 Jul 2021

What are some alternatives?

When comparing graphql-authz and graphql-public-schema-filter you can also consider the following projects:

graphql-shield - 🛡 A GraphQL tool to ease the creation of permission layer.

nestjs-graphql - GraphQL (TypeScript) module for Nest framework (node.js) 🍷

schema-stitching-handbook - Guided examples exploring GraphQL Tools v6+ Schema Stitching

apollo-server - 🌍  Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.

envelop - Envelop is a lightweight library allowing developers to easily develop, share, collaborate and extend their GraphQL execution layer. Envelop is the missing GraphQL plugin system.

graphql-jit - GraphQL execution using a JIT compiler

graphql-helix - A highly evolved GraphQL HTTP Server 🧬

galactagraph-boilerplate - 🚀 The best&fastest way to create and manage your World-Dominating Federated GraphQL API

redwood - The App Framework for Startups

graphql-spec - GraphQL is a query language and execution engine tied to any backend service.

loopback-next - LoopBack makes it easy to build modern API applications that require complex integrations.

graphql-js - A reference implementation of GraphQL for JavaScript