Kick off a software project quickly.

Hasura

Hasura — an instant GraphQL and REST API on PostgreSQL, with role-based permissions, real-time subscriptions and a web console, on your VPS.

1 GB minimum RAM 1 vCPU Port 8103 In validation

In validation

Automatic installation for this solution is ready and currently going through our tests on a real server. Ordering will open as soon as validation is complete.

Tech stack

DockerHasura GraphQL EnginePostgreSQL
Minimum RAM1 GB minimum
Minimum CPU1 vCPU
Default port8103
Compatible OSChoice of Linux distributions

Hasura GraphQL Engine is an open-source engine (Apache-2.0 licensed) that connects to a PostgreSQL database and instantly exposes a complete GraphQL API: queries, mutations, filters, sorting, pagination, relationships between tables and real-time subscriptions. There is no server code to write for CRUD: you create a table, you track it in the console, and the API is ready.

Security is declared in the same place: role-based permissions, row by row and column by column, driven by the claims of a JWT issued by your identity provider. Actions plug your own business logic (an HTTP webhook) into the GraphQL schema, Event Triggers call a webhook on every insert or update, and Cron Triggers schedule calls. Hasura serves as the backend of web and mobile apps, as an API layer in front of an existing database, or as an accelerator for an MVP.

Key features

Instant GraphQL API — every tracked table exposes queries, mutations, filters, sorting, pagination and aggregates.
Relationships and joins — foreign keys become nested fields, with no resolver to write.
Real-time subscriptions — a client subscribes to a query and receives changes over WebSocket.
Role-based permissions — row- and column-level rules, driven by the claims of a JWT.
Actions, Event Triggers and Cron Triggers — your business logic as webhooks, fired by the API, the data or the clock.
REST endpoints and web console — turn a GraphQL query into a REST route, and manage everything from the console.

When to use this solution?

1

The backend of a web or mobile app

Model your tables in PostgreSQL, declare role-based permissions, and your Vue, React or Flutter frontend queries the GraphQL API directly, with authentication from your JWT provider.

2

An API in front of an existing database

Connect Hasura to a PostgreSQL database already in production: tracked tables become a documented, typed API, without rewriting the application that fills them.

3

A real-time dashboard

GraphQL subscriptions push every new order, ticket or measurement to the browser as soon as it is inserted, with no message queue to operate.

Deploy Hasura on your VPS

Guide optimized for ServOrbit Cloud VPS.

01

Create the VPS and choose the address

Order an Ubuntu 24.04 VPS with 1 GB of RAM (2 GB for a growing database). Hasura requires a domain: its API is called by your frontends and mobile apps, so it must answer over HTTPS on a stable name. It opens on a subdomain of one of your domains, or on the VPS's free subdomain (hasura.{dns_slug}.servorbit-dns.com), HTTPS included. No need to buy a domain name.

02

Install Hasura from the Marketplace

In your client area, select Hasura, choose the address and click Install. The script deploys PostgreSQL and the Hasura engine, generates the admin secret and the database password, connects the database as the "default" source and sets up the nginx reverse proxy over HTTPS.

03

Log in for the first time

Open https://your-domain/console and paste the admin secret shown in your client area: it is the only key to the console, there is no username. Keep it in a password manager and never ship it in a frontend.

04

Create a table and expose it

In the Data tab, create a table (for example todos with id, title and done), then click Track. In the API tab, the query query { todos { id title done } } answers right away.

05

Declare authentication and permissions

Add HASURA_GRAPHQL_JWT_SECRET to the application's .env file (/opt/hasura) with your identity provider's key (Logto, Authentik, Zitadel, Auth0…), restart the stack with docker compose up -d, then, in each table's Permissions tab, define what the user role can read and change. Your clients then call the API with their token, never with the admin secret.

Frequently asked questions

Supabase is a full platform: PostgreSQL database, authentication, file storage and REST API. Hasura focuses on the API layer: a very rich GraphQL (relationships, aggregates, subscriptions), fine-grained role-based permissions and webhooks, in front of a PostgreSQL database you keep. Choose Hasura if your frontend speaks GraphQL or if you already have an identity provider.

Kick off a software project quickly.

Hasura isn't orderable yet.

Automatic installation for this solution is ready and currently going through our tests on a real server. Ordering will open as soon as validation is complete.

Need help?

Browse our help center and FAQ, or reach our team — callback, WhatsApp or email. Support in French, English and Arabic.

Message us on WhatsAppopens in a new tab