80% of all web app development is either reading from or writing to a database. 100x your developer productivity and save valuable time by making that super simple.
Just imagine the code or SQL you'll need to fetch this data, the user, all his posts, all the votes on the posts, the authors information and the related tags. Oh yeah and you also need efficient cursor based pagination. And Remember you also need to maintain this code forever.
Instead just describe the data you need in GraphQL and give that to GraphJin it'll automatically learn your database and generate the most efficient SQL query fetching your data in the JSON structure you expected.
Here's the data GraphJin fetched using the GraphQL above, it's even in the JSON structure you wanted it in. All this without you writing any code or SQL.
GraphJin can be used in two ways. You can run it as a standalone service serving as an API backend for your app or as a library within your own app code. GraphJin is built in GO a secure and high-performance language from Google used to build cloud infratructure.
After working on several products through my career I found that we spend way too much time on building API backends. Most APIs also need constant updating, and this costs time and money.
It's always the same thing, figure out what the UI needs then build an endpoint for it. Most API code involves struggling with an ORM to query a database and mangle the data into a shape that the UI expects to see.
I didn't want to write this code anymore, I wanted the computer to do it. Enter GraphQL, to me it sounded great, but it still required me to write all the same database query code.
Having worked with compilers before I saw this as a compiler problem. Why not build a compiler that converts GraphQL to highly efficient SQL.
This compiler is what sits at the heart of GraphJin, with layers of useful functionality around it like authentication, remote joins, rails integration, database migrations, and everything else needed for you to build production-ready apps with it.
Apache Public License 2.0 | Copyright © 2018-present Vikram Rangnekar