Open wanghaisheng opened 6 years ago
IDE
apijson apijson+graphql
The following is a list of tools that automatically expose a REST, GraphQL, or another kind of API for your database, as well as databases with a built-in HTTP API.
Project name/link | Database(s) supported | API type | Implementation language | License | GitHub stats | Notes |
---|---|---|---|---|---|---|
ArangoDB | ArangoDB | REST | C++ | Apache 2.0 | 7040 ★; 44129 commits, latest 2019-01-14 | A database with a built-in REST API. Official Docker image. |
CouchDB | CouchDB | REST | Erlang | Apache 2.0 | 4010 ★; 11526 commits, latest 2019-01-14 | A database with a built-in REST API. Official Docker image. |
Datasette | SQLite 3 | REST | Python 3 | Apache 2.0 | 2164 ★; 592 commits, latest 2019-01-13 | Read-only. Official Docker image. |
Dgraph | Dgraph | GraphQL+-, a GraphQL derivative | Go | Apache 2.0 | 7323 ★; 2842 commits, latest 2019-01-15 | A database with a built-in GraphQL-like API. Official Docker image. |
DreamFactory | MySQL, PostgreSQL, SQLite, MongoDB, CouchDB, and others. | REST | PHP 5 | Apache 2.0, proprietary (optional extras) | 892 ★; 813 commits, latest 2018-09-19 | Official Docker image. |
Eve | MongoDB; extensions for Elasticsearch, Neo4j, SQLAlchemy (SQL databases). | REST | Python 2/3 | BSD (three-clause) | 5423 ★; 2910 commits, latest 2018-10-11 | The SQLAlchemy extension isn't automatic. It requires the user to write SQLAlchemy mappings. |
Hasura GraphQL Engine | PostgreSQL | GraphQL | Haskell | GNU AGPLv3 | 5959 ★; 560 commits, latest 2019-01-15 | Official Docker image. |
HTSQL | MySQL, PostgreSQL, SQLite (free); Oracle, MS SQL (proprietary) | REST | Python 2 | GNU AGPLv3, proprietary (Oracle and MS SQL support) | n/a | |
neo4j-graphql | Neo4j | GraphQL | Kotlin | Apache 2.0 | 279 ★; 142 commits, latest 2019-01-09 | Can generate a GraphQL API from an existing database or derive a new database model from a GraphQL schema and auto-generate the resolvers. |
OrientDB | OrientDB | REST | Java | Apache 2.0 | 3730 ★; 17650 commits, latest 2019-01-14 | A database with a built-in REST API. Official Docker image. |
PHP-CRUD-API | MySQL, PostgreSQL, MS SQL Server. | REST | PHP 7 | MIT | 1836 ★; 1282 commits, latest 2018-12-11 | Supports GIS + automatic OpenAPI 3.0 docs. |
PostGraphile | PostgreSQL | GraphQL | TypeScript (Node.js) | MIT | 6565 ★; 1025 commits, latest 2019-01-11 | Formerly "PostGraphQL", Official Docker image. |
PostgREST | PostgreSQL | REST | Haskell | MIT | 11722 ★; 1441 commits, latest 2018-12-12 | Official Docker image. |
pREST | PostgreSQL | REST | Go | MIT | 1916 ★; 440 commits, latest 2018-09-04 | Official Docker image. |
RESTHeart | MongoDB | REST | Java | GNU AGPLv3 | 512 ★; 1596 commits, latest 2019-01-03 | Official Docker image. |
sandman2 | All supported by SQLAlchemy (MySQL, PostgreSQL, SQLite, Oracle, MS SQL, and others). | REST | Python 2/3 | Apache 2.0 | 876 ★; 159 commits, latest 2019-01-10 | Official Docker image. |
subZero | PostgreSQL | REST and GraphQL | Haskell, Lua | Proprietary | n/a | |
tuql | SQLite 3 or SQL infile | GraphQL | JavaScript (Node.js) | MIT | 346 ★; 52 commits, latest 2018-02-16 | |
Webdis | Redis | REST | C | BSD (two-clause) | 2081 ★; 399 commits, latest 2018-08-11 | Supports pub/sub with chunked transfer encoding and WebSockets. |
xmysql | MySQL | REST | JavaScript (Node.js) | MIT | 3431 ★; 266 commits, latest 2018-09-28 | Official Docker image. |
ZenQuery | PostgreSQL, MySQL, IBM Db2, Oracle Database, Microsoft SQL Server and others | REST | Java (JavaScript for the front-end) | Apache 2.0 | 37 ★; 283 commits, latest 2018-10-16 | Read-only. |
GitHub stats updated 2019-01-15. The commit count and the latest commit date are for the default branch (usually master
).
For projects that depend on or enhance those on the list see the Related projects wiki page. Feel free to add yours.
Your contributions are welcome! Please submit a pull request or create an issue to add a new project to the list or to update an existing one. See CONTRIBUTING for the details.
This document and the data in data/
are licensed under the Creative Commons Attribution 4.0 International License. By contributing you agree to release your contribution under this license.
join-monster
tentaQL
https://subzero.cloud/ Stop spending months developing backend APIs for your apps. With subZero, you’ll be ready in a few days — and you can get back to building your product.
Imagine being able to have your API 80% ready after a few quick steps. Define your tables and views, set constraints on your columns, grant privileges to users, and you’re there — all while using standard SQL statements. To finish the last 20%, you can use real languages to implement your custom logic, not just SDKs and webhooks.
By adopting GraphQL as the language for communication with your API, you remove any coupling between your frontend code and the backend. Combined with the ability to choose any database schema you like, you get a no lock in guarantee.
Unlike other solutions, we never require you to store your data in a proprietary system. The data lives in your database, in the format you choose — just like it’s supposed to. If you already have your database and data, you don’t have to import it anywhere or change the structure. subZero will take what you have and work with it, without any extra steps.
We’ve gone through the process of building APIs and we know how long it takes to get everything set up. You always think you’ll be able to get it up quickly, and then two months later you’re still stuck on your API before you’ve even been able to start on your product. subZero cuts that development time down drastically.
On a system composed of an AWS t2.micro instance running subZero, connected to a RDS db.t2.micro database, we were seeing more than 500 requests per second, with latencies in the range of 5 ms — 20 ms on a three table join. To put that in perspective, you get 1,296,000,000 requests/month on $21 hardware, which is 100 times more than our competitors give you for the same price, even after factoring in the licensing costs of our software.
GraphQL is a query language for APIs which provides a complete and understandable description of the data in your API. The upsides are many:
It gives clients the power to ask for exactly what they need It makes it easier to evolve APIs over time It enables powerful developer tools Apps that use GraphQL don’t have to sacrifice speed for stability (or vice versa) because they control the data they get, not the server. While typical REST APIs require loading from multiple URLs, GraphQL APIs get all the data your app needs in a single request. This mean your app will always be lightning fast — even on slow mobile network connections.
Flexible GraphQL & REST API out of the box Extremely short time to production (we’re talking days) Efficient queries — no N+1 problem Built-in scriptable caching system Easy deployment as Docker containers Use the full power of SQL/Lua/Python/Javascript Support for GraphQL/Relay specifications Real-time updates using a Messaging Server
P020180930635233809411.docx 商保便民服务平台需求文档
https://github.com/graphcool/prisma