Hasura

Hasura

Hasura provides fast, instant realtime GraphQL APIs on Postgres with fine-grained access control and webhook triggers on database events. Built with Haskell, it automatically generates GraphQL APIs from your database schema with real-time subscriptions.

Self-hosted alternatives to:
Similar self-hosted alternatives:
Repository activity:
Stars
31,560
Forks
2,804
Watchers
326
Open Issues
2,368
Last commit
about 23 hours ago
Details:
Estimated Popularity
135
Pricing Model
Free
Hosting Type
Self-Hosted
License
Apache-2.0
Deployment Difficulty
Easy
Language
TypeScript

Hasura is a powerful GraphQL engine that instantly generates real-time GraphQL APIs from your PostgreSQL database. Built with Haskell for performance and reliability, it provides automatic API generation, real-time subscriptions, and comprehensive access control for modern applications.

Key Features

  • Instant GraphQL API Generation:

    • Automatic GraphQL API from PostgreSQL schema
    • Real-time schema introspection and updates
    • Complete CRUD operations generation
    • Complex queries with joins and aggregations
    • Mutations for data modification
    • Custom GraphQL resolvers
  • Real-time Capabilities:

    • GraphQL subscriptions for live data
    • Live queries with automatic updates
    • Real-time data synchronization
    • Event streaming and processing
    • WebSocket-based connections
    • Optimistic updates support
  • Comprehensive Database Integration:

    • Native PostgreSQL support and optimization
    • Automatic relationship detection and mapping
    • Database views and function support
    • Custom SQL query integration
    • Database event capture and processing
    • Schema migration and versioning
  • Advanced Security & Access Control:

    • Fine-grained permission system
    • Role-based access control (RBAC)
    • JWT token authentication
    • Webhook-based authentication
    • Row-level security policies
    • Column-level access control
  • Event-Driven Architecture:

    • Database event triggers
    • Webhook integration and management
    • Scheduled events and cron jobs
    • Event processing pipelines
    • Custom business logic integration
    • Serverless function support
  • Developer Experience:

    • Interactive GraphQL console
    • API explorer and testing tools
    • Auto-generated schema documentation
    • Performance analytics and monitoring
    • Database migration tools
    • Version control integration
  • Enterprise Features:

    • High availability deployment
    • Horizontal scaling support
    • Monitoring and observability
    • Caching and performance optimization
    • Enterprise security features
    • Professional support

Technical Specifications

  • Language: Haskell
  • License: Apache-2.0
  • Database: PostgreSQL
  • Deployment: Docker, Kubernetes
  • Platforms: Cross-platform
  • Requirements: PostgreSQL
  • Protocol: GraphQL, WebSocket

Use Cases

  • Real-time Applications: Chat apps, live dashboards, collaborative tools
  • Rapid Prototyping: Quick API development for MVPs
  • Modern Web Applications: React, Vue, Angular applications with GraphQL
  • Mobile Applications: Real-time mobile app backends
  • Microservices: GraphQL gateway for microservices
  • Data-Driven Applications: Applications requiring complex data queries

Unique Advantages

  • Instant APIs: Zero-code GraphQL API generation from database
  • Real-time by Default: Built-in real-time subscriptions and live queries
  • PostgreSQL Native: Optimized specifically for PostgreSQL
  • High Performance: Haskell-based for maximum performance
  • Event-Driven: Comprehensive event system for business logic
  • Open Source: Transparent, customizable, and community-driven

Based on the Hasura GitHub repository, this tool provides development teams with instant, real-time GraphQL APIs from PostgreSQL databases, making it ideal for teams that want to rapidly build modern applications with real-time capabilities and comprehensive data access patterns.

Help improve this content

Found an error or want to add more information about Hasura? You can edit this page directly on GitHub.

Project Categories

Click on a category to explore similar projects