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 | 8229 ★; 45077 commits, latest 2019-07-09 | A database with a built-in REST API. Official Docker image. |
CouchDB | CouchDB | REST | Erlang | Apache 2.0 | 4237 ★; 11751 commits, latest 2019-07-03 | A database with a built-in REST API. Official Docker image. |
Datasette | SQLite 3 | REST | Python 3 | Apache 2.0 | 2558 ★; 791 commits, latest 2019-07-08 | Read-only. Official Docker image. |
Dgraph | Dgraph | GraphQL+-, a GraphQL derivative | Go | Apache 2.0 | 9964 ★; 3417 commits, latest 2019-07-10 | 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) | 953 ★; 814 commits, latest 2019-06-05 | Official Docker image. |
Eve | MongoDB; extensions for Elasticsearch, Neo4j, SQLAlchemy (SQL databases). | REST | Python 2/3 | BSD (three-clause) | 5708 ★; 3091 commits, latest 2019-06-14 | The SQLAlchemy extension isn't automatic. It requires the user to write SQLAlchemy mappings. |
Hasura GraphQL Engine | PostgreSQL | GraphQL | Haskell | GNU AGPLv3 | 10753 ★; 1002 commits, latest 2019-07-10 | 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 | 320 ★; 161 commits, latest 2019-06-20 | 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 | 3914 ★; 18029 commits, latest 2019-07-10 | A database with a built-in REST API. Official Docker image. |
PHP-CRUD-API | MySQL, PostgreSQL, MS SQL Server. | REST | PHP 7 | MIT | 2063 ★; 1508 commits, latest 2019-07-06 | Supports GIS + automatic OpenAPI 3.0 docs. |
PostGraphile | PostgreSQL | GraphQL | TypeScript (Node.js) | MIT | 7498 ★; 1124 commits, latest 2019-07-03 | Formerly "PostGraphQL", Official Docker image. |
PostgREST | PostgreSQL | REST | Haskell | MIT | 12558 ★; 1515 commits, latest 2019-07-08 | Official Docker image. |
pREST | PostgreSQL | REST | Go | MIT | 2061 ★; 442 commits, latest 2019-05-28 | Official Docker image. |
RESTHeart | MongoDB | REST | Java | GNU AGPLv3 | 544 ★; 1884 commits, latest 2019-07-09 | Official Docker image. |
sandman2 | All supported by SQLAlchemy (MySQL, PostgreSQL, SQLite, Oracle, MS SQL, and others). | REST | Python 2/3 | Apache 2.0 | 1062 ★; 191 commits, latest 2019-05-29 | Official Docker image. |
subZero | PostgreSQL | REST and GraphQL | Haskell, Lua | Proprietary | n/a | |
tuql | SQLite 3 or SQL infile | GraphQL | JavaScript (Node.js) | MIT | 384 ★; 52 commits, latest 2018-02-16 | |
Webdis | Redis | REST | C | BSD (two-clause) | 2128 ★; 407 commits, latest 2019-06-01 | Supports pub/sub with chunked transfer encoding and WebSockets. |
xmysql | MySQL | REST | JavaScript (Node.js) | MIT | 3661 ★; 268 commits, latest 2019-03-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 | 43 ★; 283 commits, latest 2018-10-16 | Read-only. |
GitHub stats updated 2019-07-10. 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.