Live data from Hacker News

Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

github.com

1–10 of 26 posts

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#2
I really like the README in this project. I had a lot of questions (especially going to production and extending GraphQL myself) which are answered in the README. https://github.com/calebmer/postgraphql/blob/master/README.m...

But I don't know how to do it yet.

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#4
People might also be interested in Postgrest. Postgrest is an open-source project that creates a REST api based on a Postgres schema: https://github.com/begriffs/postgrest

It ain't GraphQL, and I don't understand GraphQL enough to note functional differences. Postgrest made it extremely easy to serve a more-than-sufficient api for my db though.

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#5
post #3

Curious how response depth is usually handled in something like this, especially if recursion comes into play. Don't know much yet about Relay.

There's no unbounded recursion in GraphQL: response depth equals query depth.

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#6
post #3

Curious how response depth is usually handled in something like this, especially if recursion comes into play. Don't know much yet about Relay.

You have to specify the depth in the query by explicitly describing each level. There's no way to specify infinite depth (by design). https://github.com/facebook/graphql/issues/91

If you really wanted to get all the comments on a post, for example, you would have to have a flattened "comments" listing (but each comment could have an id and parent id, which you could use to re-build the nested structure on the client)

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#7
post #3

Curious how response depth is usually handled in something like this, especially if recursion comes into play. Don't know much yet about Relay.

Facebook handles malicious queries by setting a list of permitted queries. I want to get this implemented soon at the server layer, check out my PR here: https://github.com/graphql/express-graphql/pull/77

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#8
This looks amazing. I can't wait to dig into the internals and play around.

I've been thinking about a "Postgres-first" application design for some time, where a thin GraqhQL/REST layer sits on top, and most of the business logic lives in Postgres directly, or operates as a triggered async function (eg; AWS Lambda).

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#9
With WAMP and crossbar.io, you can already directly query in SQL you PostGres db from the browser. So this does not give you real advanstages over existing solutions.

The real benefit of GraphQL is that it unifies stuff:

- several queries can be masqued as one; - several storages systems can be queried in one shot; - the cache layer can be integrated in the graphql server; - queries can actually no type in any backend and just run code; - the query doesn't hold logic, just data mapping. - queries can propagate events, trigger tasks, etc.

The graphql server is nice because it's an intermediary layer, separating your data manipulation from the rest of the logic in your system.

You definitly don't want you DB to be the only one doing the authentification/permissions nowaday, unless you want to script it to do social auth, OAuth, connect to a ldap, etc.

And you do want to be able to graphql your way into stuff that are not into your db.

Re: Postgraphql: A GraphQL schema created by reflection over a PostgreSQL schema

#10

People might also be interested in Postgrest. Postgrest is an open-source project that creates a REST api based on a Postgres schema: https://github.com/begriffs/postgrest It ain't GraphQL, and I don't understand GraphQL enough to note functional differences. Postgrest made it extremely easy to serve a more-than-sufficient api for my db though.

Definitely, PostgREST is an awesome project and definitely an inspiration for PostGraphQL. I gave the project credit in the README: https://github.com/calebmer/postgraphql#thanks
Post reply on HN