Go to file
Vikram Rangnekar 4c07ad1102 Add end-to-end benchmaking 2019-06-17 01:58:00 -04:00
bench Add end-to-end benchmaking 2019-06-17 01:58:00 -04:00
config Add end-to-end benchmaking 2019-06-17 01:58:00 -04:00
corpus Add SQL query cacheing 2019-04-20 00:35:57 -04:00
docs Futher reduce allocations on the compiler hot path 2019-06-14 00:32:15 -04:00
jsn Add validation for remote JSON 2019-06-04 10:54:51 -04:00
psql Reduce alllocations done by the stack 2019-06-16 20:51:36 -04:00
qcode Reduce alllocations done by the stack 2019-06-16 20:51:36 -04:00
rails Add supprt for new Rails 5.2 aes-256-gcm cookies 2019-04-10 01:38:48 -04:00
rails-app Futher reduce allocations on the compiler hot path 2019-06-14 00:32:15 -04:00
serv Add end-to-end benchmaking 2019-06-17 01:58:00 -04:00
slides Add a presentation about GraphQL 2019-06-06 01:00:16 -04:00
util Reduce alllocations done by the stack 2019-06-16 20:51:36 -04:00
web Fix cookie passing in web ui 2019-06-04 20:00:24 -04:00
.dockerignore Improve the demo experience 2019-04-11 01:10:51 -04:00
.gitignore Improve the demo experience 2019-04-11 01:10:51 -04:00
Dockerfile Add supprt for new Rails 5.2 aes-256-gcm cookies 2019-04-10 01:38:48 -04:00
LICENSE Fix license to MIT 2019-03-24 10:07:07 -04:00
README.md Reduce steps to run the demo 2019-06-01 10:53:24 -04:00
demo Add end-to-end benchmaking 2019-06-17 01:58:00 -04:00
docker-compose.yml Futher reduce allocations on the compiler hot path 2019-06-14 00:32:15 -04:00
fresh.conf Add test for Rails Redis cookie store integration 2019-04-13 10:30:02 -04:00
fuzz.yaml Fix issue with fuzzbuzz config 2019-04-20 10:45:12 -04:00
go.mod Optimize lexer and fix bugs 2019-06-14 22:17:21 -04:00
go.sum Optimize lexer and fix bugs 2019-06-14 22:17:21 -04:00
main.go Add REST API stitching 2019-05-12 19:27:26 -04:00

README.md

Super Graph - Instant GraphQL API for Rails

MIT license Docker build Cloud native

Get an high-performance GraphQL API for your Rails app in seconds without writing a line of code. Super Graph will auto-learn your database structure and relationships. Built in support for Rails authentication and JWT tokens.

Super Graph Web UI

Why I built Super Graph?

Honestly, cause it was more fun than my real work. After working on several product though my career I found myself hating building CRUD APIs (Create, Update, Delete, List, Show). It was always the same thing figure out what the UI needs then build an endpoint for it, if related data is needed than join with another table. I didn't want to write that code anymore I wanted the computer to just do it.

I always liked GraphQL it sounded friendly, but it still required me to write all the same database query code. Sure the API was nicer but it took a lot of work sometime even more than a simple REST API would have. I wanted a GraphQL server that just worked the second you deployed it without having to write a line of code.

And so after a lot of coffee and some Avocado toasts Super Graph was born, a GraphQL server that just works, is high performance and easy to deploy. I hope you find it as useful as I do and there's a lot more coming so hit that to stay in the loop.

Features

  • Works with Rails database schemas
  • Automatically learns schemas and relationships
  • Belongs-To, One-To-Many and Many-To-Many table relationships
  • Full text search and Aggregations
  • Rails Auth supported (Redis, Memcache, Cookie)
  • JWT tokens supported (Auth0, etc)
  • Join with remote REST APIs
  • Highly optimized and fast Postgres SQL queries
  • Configure with a simple config file
  • High performance GO codebase
  • Tiny docker image and low memory requirements

Watch some talks

Watch the video

Documentation

supergraph.dev

Contact me

twitter.com/dosco

License

MIT

Copyright (c) 2019-present Vikram Rangnekar