super-graph/README.md

60 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2019-10-01 06:00:15 +02:00
<a href="https://supergraph.dev"><img src="https://supergraph.dev/hologram.svg" width="100" height="100" align="right" /></a>
2019-04-18 15:27:36 +02:00
2019-10-01 06:00:15 +02:00
# Super Graph - Build web products faster. Instant GraphQL APIs for your apps
2019-03-24 14:57:29 +01:00
2019-04-18 05:35:08 +02:00
![MIT license](https://img.shields.io/github/license/dosco/super-graph.svg)
![Docker build](https://img.shields.io/docker/cloud/build/dosco/super-graph.svg)
![Cloud native](https://img.shields.io/badge/cloud--native-enabled-blue.svg)
[![Discord Chat](https://img.shields.io/discord/628796009539043348.svg)](https://discord.gg/6pSWCTZ)
2019-03-24 14:57:29 +01:00
2019-10-01 06:00:15 +02:00
Get an instant high performance GraphQL API for Postgres. No code needed. GraphQL is automatically transformed into efficient database queries.
2019-03-24 14:57:29 +01:00
2019-10-01 06:00:15 +02:00
![GraphQL](docs/.vuepress/public/graphql.png?raw=true "")
2019-03-30 06:11:30 +01:00
2019-10-01 06:00:15 +02:00
## The story of Super Graph?
2019-03-24 14:57:29 +01:00
2019-10-01 06:00:15 +02:00
After working on several products through my career I find that we spend way too much time on building API backends. Most APIs also require constant updating, this costs real 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.
2019-03-24 14:57:29 +01:00
2019-10-01 06:00:15 +02:00
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.
2019-03-24 14:57:29 +01:00
2019-10-01 06:00:15 +02:00
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 Super Graph 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.
2019-03-24 14:57:29 +01:00
## Features
2019-10-01 06:00:15 +02:00
2019-04-07 07:12:11 +02:00
- Works with Rails database schemas
- Automatically learns schemas and relationships
2019-03-24 14:57:29 +01:00
- Belongs-To, One-To-Many and Many-To-Many table relationships
2019-04-07 07:12:11 +02:00
- Full text search and Aggregations
- Rails Auth supported (Redis, Memcache, Cookie)
- JWT tokens supported (Auth0, etc)
2019-06-01 16:53:24 +02:00
- Join with remote REST APIs
2019-04-07 07:12:11 +02:00
- Highly optimized and fast Postgres SQL queries
2019-10-01 06:00:15 +02:00
- Support GraphQL queries and mutations
2019-04-07 07:12:11 +02:00
- Configure with a simple config file
- High performance GO codebase
2019-03-24 14:57:29 +01:00
- Tiny docker image and low memory requirements
2019-10-01 06:00:15 +02:00
- Database migrations tool
- Write database seeding scripts in Javascript
2019-05-13 01:27:26 +02:00
2019-04-11 07:39:59 +02:00
## Documentation
[supergraph.dev](https://supergraph.dev)
2019-03-24 14:57:29 +01:00
## Contact me
[twitter/dosco](https://twitter.com/dosco)
[chat/super-graph](https://discord.gg/6pSWCTZ)
2019-03-24 14:57:29 +01:00
## License
[MIT](http://opensource.org/licenses/MIT)
Copyright (c) 2019-present Vikram Rangnekar