StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Languages
  4. Query Languages
  5. PostGraphile vs graphql.js

PostGraphile vs graphql.js

OverviewDecisionsComparisonAlternatives

Overview

PostGraphile
PostGraphile
Stacks85
Followers214
Votes47
graphql.js
graphql.js
Stacks93
Followers85
Votes0
GitHub Stars2.3K
Forks88

PostGraphile vs graphql.js: What are the differences?

  1. Performance: PostGraphile is built on top of Postgres database and leverages SQL for optimal performance, while graphql.js is a standalone library that can work with any data source, which may lead to slower performance in some cases.
  2. Automatic schema generation: PostGraphile automatically generates a GraphQL schema based on the structure of the underlying Postgres database, making it easier to get started with GraphQL. In contrast, graphql.js requires manual definition of the schema using GraphQL type definitions.
  3. Complexity handling: PostGraphile simplifies the process by handling complex SQL queries and database optimizations internally, reducing the amount of custom code needed. On the other hand, graphql.js gives more flexibility and control over how queries are executed and data is manipulated.
  4. Middleware integration: PostGraphile seamlessly integrates with Express.js middleware for building APIs, making it easier to incorporate authentication, logging, and other functionalities. graphql.js does not have built-in middleware support, requiring developers to manually set up middleware for these purposes.
  5. Real-time capabilities: PostGraphile supports real-time functionality through subscriptions using the Postgres LISTEN/NOTIFY feature, allowing clients to receive updates instantly. In comparison, graphql.js requires additional tools or libraries to implement real-time capabilities.
  6. Community and support: PostGraphile has a smaller but dedicated community with focused support for Postgres-related GraphQL solutions, while graphql.js has a larger and more diverse community with broader support for different GraphQL use cases and data sources.

In Summary, PostGraphile excels in performance, automatic schema generation, and middleware integration for Postgres databases, while graphql.js offers more flexibility, complexity handling, and real-time capabilities with broader community support for various use cases.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on PostGraphile, graphql.js

Raj
Raj

CTO & Founder at Novvum

Oct 5, 2020

Review

Hey Brian, it's hard to pick a best tool for any situation, however, there are tools that offer advantages dependent on use case.

Server Side

If you're looking to quickly generate a GraphQL API, you can use a Graphql As A Service like FaunaDB, Slash Graphql, or 8base.

If you want something more advanced on the server side: Prisma with Postgres, Nexus, & Apollo Server (js) is a great stack to try out. Examples here

Check out TypeORM and TypeGraphQL too

If you're have some existing data on Postgres, PostGraphile or Hasura are your best bet!

If you are using a lot of AWS services, check out Amplify and AppSync. Tutorial here

On the client side:

Check out Gatsby! Graphql is already configured and used to query static or remote information at build time. It's a great way to get your feet wet!

Apollo Client is often the choice for more advanced use cases. But URLQL and gqless are some pretty good alternatives too!

Hope this helps! 👍

298 views298
Comments
Raj
Raj

Oct 10, 2020

Review

It purely depends on your app needs. Does it need to be scalable, do you have lots of features, OR it is a simple project with very simple needs - many of those parameters clarify which technologies will fit.

If you are looking for a quick solution, that reduces lot of development time, take a look at postgraphile (https://www.graphile.org/postgraphile/). You have to just define the schema and you get the entire graph-ql apis built for you and you can just focus on your frontend.

On frontend, React is good, but also need to remember that it is popular because it introduced one way data writes and in-built virtual dom + diffing to determine which dom to modify. Though personally I liked it, am recently more inclined to Svelte because its lightweightedness and absence of virtual dom and its simplicity compared to the huge ecosystem that React has surrounded itself with.

In all situations, frameworks keep changing over time. What is best today is not considered even good few years from now. What is important is to have the logic in a separate, clean manner void of too many framework related dependencies - that way you can switch one framework with another very easily.

3.77k views3.77k
Comments

Detailed Comparison

PostGraphile
PostGraphile
graphql.js
graphql.js

Execute one command (or mount one Node.js middleware) and get an instant high-performance GraphQL API for your PostgreSQL database

Lightest GraphQL client with intelligent features. You can download graphql.js directly, or you can use Bower or NPM.

instant GraphQL schema via reflection over PostgreSQL database API; compiles complex GraphQL queries into very few SQL statements resulting in high performance; built entirely from plugins - heavily customisable; support for PostgreSQL RBAC and RLS; watch mode (monitors for database schema changes) for great DX; standalone server, express middleware, or GraphQL schema; integration with Express auth via pgSettings (e.g. Passport.js, optional); JWT auth (optional); very strong support for PostgreSQL functions; simple to set up and scale
No dependencies, plain vanilla JavaScript.;Plug & Play.;Isomorphic.;Runs on most browsers.;You don't need to install Node.js ecosystem on your computer.
Statistics
GitHub Stars
-
GitHub Stars
2.3K
GitHub Forks
-
GitHub Forks
88
Stacks
85
Stacks
93
Followers
214
Followers
85
Votes
47
Votes
0
Pros & Cons
Pros
  • 10
    Postgres based authentication
  • 6
    Great developer support
  • 5
    Lightning fast
  • 5
    Database first with no braking changes
  • 4
    Simple to set up and scale
No community feedback yet
Integrations
Apollo
Apollo
ExpressJS
ExpressJS
Node.js
Node.js
PostgreSQL
PostgreSQL
Koa
Koa
GraphQL
GraphQL
Fastify
Fastify
Relay Framework
Relay Framework
GraphQL
GraphQL

What are some alternatives to PostGraphile, graphql.js?

GraphQL

GraphQL

GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012.

Prisma

Prisma

Prisma is an open-source database toolkit. It replaces traditional ORMs and makes database access easy with an auto-generated query builder for TypeScript & Node.js.

OData

OData

It is an ISO/IEC approved, OASIS standard that defines a set of best practices for building and consuming RESTful APIs. It helps you focus on your business logic while building RESTful APIs without having to worry about the various approaches to define request and response headers, status codes, HTTP methods, URL conventions, media types, payload formats, query options, etc.

Oracle PL/SQL

Oracle PL/SQL

It is a powerful, yet straightforward database programming language. It is easy to both write and read, and comes packed with lots of out-of-the-box optimizations and security features.

SQL

SQL

SQL is designed for managing data held in a relational database management system (RDBMS), or for stream processing in a relational data stream management system (RDSMS).

Graphene

Graphene

Graphene is a Python library for building GraphQL schemas/types fast and easily.

JSON API

JSON API

It is most widely used data format for data interchange on the web. This data interchange can happen between two computers applications at different geographical locations or running within same hardware machine.

JsonAPI

JsonAPI

t is a format that works with HTTP. A main goal of the specification is to optimize HTTP requests both in terms of the number of requests and the size of data packages exchanged between clients and servers.

GraphQL Ruby

GraphQL Ruby

Get going fast with the graphql gem, battle-tested and trusted by GitHub and Shopify.

Trino

Trino

It is a fast distributed SQL query engine for big data analytics that helps you explore your data universe. It is designed to query large data sets distributed over one or more heterogeneous data sources.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase