Introduction
Nhost provides a complete backend stack modeled after Firebase but built on open-source technologies. It combines PostgreSQL as the database, Hasura for instant GraphQL APIs, a built-in auth service, S3-compatible file storage, and a serverless functions runtime. Teams can self-host the entire platform or use the managed cloud service.
What Nhost Does
- Provides an instant GraphQL API over PostgreSQL via Hasura
- Handles user authentication with email, OAuth, and magic links
- Manages file uploads with S3-compatible storage
- Runs serverless functions triggered by database events or HTTP
- Offers client SDKs for React, Vue, Next.js, and Flutter
Architecture Overview
Nhost orchestrates several services behind a single gateway: PostgreSQL for data, Hasura for GraphQL, a Go-based auth service, MinIO for object storage, and a Node.js functions runtime. The Nhost CLI spins up all services locally using Docker Compose. In production, each service scales independently. The Hasura console provides schema management and permission configuration through a web UI.
Self-Hosting & Configuration
- Use the Nhost CLI to scaffold and run the full stack locally
- Deploy to production with Docker Compose or Kubernetes
- Configure authentication providers in
nhost/config.yaml - Set up custom email templates for verification and password reset
- Define Hasura permissions for row-level security on every table
Key Features
- Instant GraphQL subscriptions for real-time data updates
- Database migrations and metadata tracked in version control
- Built-in rate limiting and JWT-based session management
- Hasura actions and event triggers for custom business logic
- Dashboard UI for managing users, storage, and database schema
Comparison with Similar Tools
- Supabase — uses REST/PostgREST instead of GraphQL by default
- Firebase — proprietary; no self-hosting option
- Appwrite — broader API surface but uses its own database abstraction
- PocketBase — single Go binary; simpler but fewer enterprise features
FAQ
Q: Do I need to know GraphQL to use Nhost? A: Basic GraphQL knowledge helps, but the Hasura console auto-generates queries and mutations from your schema.
Q: Can I use Nhost with a frontend framework other than React? A: Yes. Nhost provides SDKs for React, Vue, Next.js, Flutter, and a generic JavaScript client that works with any framework.
Q: How does Nhost handle database migrations? A: Migrations are managed through Hasura's migration system and tracked as SQL files in your project repository.
Q: Is the self-hosted version feature-complete compared to the cloud? A: The core stack is identical. The managed cloud adds monitoring dashboards, automatic backups, and global CDN distribution.