Hasura GraphQL Engine: Instant Realtime GraphQL APIs on Your Data
Summary
The Hasura GraphQL Engine provides blazing fast, instant realtime GraphQL APIs on all your data, complete with fine-grained access control and webhook triggers on database events. With over 31,000 stars, it's a popular open-source project for modern application development, supporting various databases like PostgreSQL, MongoDB, and MS SQL Server.
Repository Info
Tags
Click on any tag to explore related repositories
Introduction
The Hasura GraphQL Engine is an open-source project that supercharges the building of modern applications by providing access to data via a single, composable, secure API endpoint. It offers blazing fast, instant realtime GraphQL APIs on all your data, complete with fine-grained access control and the ability to trigger webhooks on database events. Hasura supports various databases including PostgreSQL, MongoDB, ClickHouse, and MS SQL Server, and allows for custom business logic using TypeScript, Python, and Go Connector SDKs. The project actively develops both its stable V2 and the newer V3 engine, which powers Hasura DDN.
Installation
To get started with the Hasura GraphQL Engine, you can clone the repository. Due to its large size and history, a shallow clone is recommended for faster setup:
git clone https://github.com/hasura/graphql-engine.git --depth 1
If you are specifically interested in the Hasura V3 engine code, which resides in the v3 folder, you can use a sparse checkout to only retrieve that specific directory:
git clone --no-checkout https://github.com/hasura/graphql-engine.git --depth 1
cd graphql-engine
git sparse-checkout init --cone
git sparse-checkout set v3
git checkout @
Examples
For practical examples and quickstart guides, Hasura provides comprehensive documentation for both its V2 and V3 engines.
- Hasura V3 Quickstart: https://hasura.io/docs/3.0/getting-started/quickstart/
- Hasura V2 Documentation: https://hasura.io/docs
These resources offer detailed instructions and code snippets to help you integrate Hasura into your projects and build powerful GraphQL APIs.
Why Use Hasura GraphQL Engine?
Hasura GraphQL Engine stands out for several compelling reasons:
- Instant GraphQL APIs: Automatically generates GraphQL APIs from your database schema in seconds.
- Realtime Capabilities: Provides live queries and subscriptions out-of-the-box, enabling real-time applications.
- Fine-Grained Access Control: Offers robust security features to define precise permissions for data access.
- Database Event Webhooks: Allows you to trigger custom business logic via webhooks on database events.
- Broad Database Support: Connects to PostgreSQL, MongoDB, ClickHouse, MS SQL Server, and more via Data Connectors.
- Open Source & Extensible: A vibrant open-source project with an extensible architecture, supporting custom connectors and business logic.
- Performance: Engineered for blazing fast performance, handling high-throughput data operations efficiently.
Links
Explore the Hasura GraphQL Engine further through these official resources:
- Hasura Homepage: https://hasura.io/
- Hasura Community: https://hasura.io/community/
- Hasura DDN Documentation (V3): https://hasura.io/docs/3.0/
- Hasura V2 Documentation: https://hasura.io/docs
- GitHub Issues: https://github.com/hasura/graphql-engine/issues
- Discord Support: https://discord.gg/hasura
- Twitter Updates: https://twitter.com/hasurahq
- Connector Hub: https://hasura.io/connectors/