Skip to main content

Backend Systems

Natively supports two backend systems for your app’s server-side functionality. This guide helps you understand which one you’re using and how each works.

Which Backend Am I Using?

Quick Check: Look at the preview header in your project.
  • See a “Database” button? → You’re using Liquid Backend (Specular)
  • No “Database” button? → You’re using Supabase
You’ll see a Database icon (🗄️) in the preview header toolbar. This opens the Database Viewer to browse your tables.
Liquid Backend is powered by Specular - a serverless backend platform designed for AI-generated APIs.
Liquid Backend (Specular) will get you further. It’s the recommended backend for most use cases. Supabase is mostly available for users that already have a website set up and are running Supabase there.

Liquid Backend (Specular)

Liquid Backend is Natively’s integrated backend system powered by Specular. It automatically generates APIs and databases from natural language.
For complete Specular documentation, visit docs.specular.dev/specular

What Liquid Backend Provides

RESTful APIs

Automatic API endpoint generation from natural language

PostgreSQL Database

Fully managed database with automatic schema creation

Authentication

User registration, login, and session management

File Storage

Upload and serve images and files

When Liquid Backend Is Created

The AI automatically creates backend functionality when you request:
  • User authentication - Sign up, login, password reset
  • Data persistence - Saving data across sessions
  • User-specific data - Data tied to user accounts
  • API integrations - External services requiring server-side secrets
  • AI features - ChatGPT or other AI model integrations

Example Prompts

Add user authentication with email and password.
Users should stay logged in and their data should sync across devices.
Create a notes app where users can save notes to their account
and access them from any device.

Database Viewer

With Liquid Backend, you can view your data directly in Natively:
  1. Click the Database icon (🗄️) in the preview header
  2. Browse tables on the left sidebar
  3. View records and their values
This is useful for:
  • Verifying data is saving correctly
  • Debugging data-related issues
  • Understanding the database structure

Logs Viewer

Liquid Backend includes a Logs Viewer in Natively:
  1. Click the Logs icon in the preview header
  2. Switch between “Frontend” and “Backend” tabs
  3. View API calls, errors, and debug information

Environment Variables (Liquid Backend)

For Liquid Backend projects, environment variables are managed through Specular:
  • Server-side secrets (API keys, tokens) are stored securely in Specular
  • Frontend variables can be added via MoreEnvironment Variables
  • Variables are automatically available to your backend code
Secret keys (like OPENAI_API_KEY) should be stored in Specular, not exposed to the frontend.

Production Deployment

When deploying your app with Liquid Backend:
1

Development

During development, you’re using a dev environment backend
2

Push to Production

In the Deploy modal, click “Push to Production” for backend
3

Production URL

Your app is automatically configured to use the production API

Supabase

Supabase is an open-source Firebase alternative that provides database, authentication, and storage. Some projects use Supabase for specific requirements.

How Supabase Works

Unlike Liquid Backend which generates APIs automatically, Supabase provides:
  1. Direct Database Access - Your app connects directly to PostgreSQL
  2. Supabase Client SDK - Uses @supabase/supabase-js for queries
  3. Row Level Security (RLS) - Security rules defined in Supabase Dashboard
  4. OAuth Integration - Natively connects to your Supabase project via secure OAuth

Connecting Supabase

Natively uses OAuth to securely connect to your Supabase project:
1

Open Supabase Settings

Click MoreSupabase in the project menu
2

Connect via OAuth

Click “Connect Supabase” and sign in to your Supabase account
3

Authorize Access

Grant Natively permission to access your Supabase projects
4

Select Project

Choose your Supabase project from the list
The OAuth connection handles all authentication automatically. No manual API key configuration required.

Managing Your Supabase Database

Since there’s no Database Viewer for Supabase in Natively, you’ll manage your database through: Supabase Dashboard - supabase.com/dashboard
  • Table Editor for viewing/editing data
  • SQL Editor for running queries
  • Schema management

Logs for Supabase

Supabase backend logs are not available in Natively. You must use the Supabase Dashboard.
To view Supabase logs:
  1. Go to supabase.com/dashboard
  2. Select your project
  3. Navigate to Logs in the sidebar
  4. Choose the log type:
    • API Logs - REST API requests
    • Postgres Logs - Database queries
    • Auth Logs - Authentication events
    • Edge Function Logs - Serverless function logs
For frontend console logs, use the Logs icon in Natively’s preview header - these are still available for all projects.

Environment Variables (Supabase)

Supabase connection is handled automatically via OAuth. The OAuth integration manages your connection securely without requiring manual API key configuration. For additional environment variables needed by your app, use MoreEnvironment Variables.

Supabase Features

FeatureHow to Use
DatabaseSupabase Dashboard Table Editor
AuthenticationSupabase Auth (email, OAuth, phone)
StorageSupabase Storage buckets
Edge FunctionsDeploy via Supabase CLI
RealtimeSubscribe to database changes
RLS PoliciesDefine in Supabase Dashboard

Comparison Table

FeatureLiquid Backend (Specular)Supabase
Database Viewer in Natively✅ Yes❌ No (use Dashboard)
Backend Logs in Natively✅ Yes❌ No (use Dashboard)
API GenerationAutomatic from promptsManual or via AI
Environment VariablesManaged in SpecularOAuth + manual
AuthenticationBuilt-inSupabase Auth
Database AccessVia generated REST APIsDirect client SDK
Schema ManagementAI-generatedSupabase Dashboard
Production DeployOne-click in NativelyAutomatic (Supabase hosted)

Migration

Migration from Supabase to Liquid Backend is not possible.
If you need to switch backend systems, you can only migrate from Liquid Backend (Specular) to Supabase—not the other way around.

When to Consider Migration

In most cases, Liquid Backend will get you further. Consider migrating to Supabase only if you specifically need:
  • PostgreSQL functions and triggers
  • Supabase-specific features (Realtime subscriptions, Edge Functions)
  • Integration with existing Supabase infrastructure
  • Direct SQL access for complex queries

Migration from Specular to Supabase

If you must migrate:
1

Export Your Data

Use the Specular API or contact support to export your data
2

Create Supabase Project

Set up a new project at supabase.com
3

Recreate Schema

Create your tables in Supabase Dashboard
4

Import Data

Import your data using Supabase’s import tools or SQL
5

Connect via OAuth

Follow the OAuth connection steps in Natively
6

Update App

Ask the AI to update your app to use Supabase

Troubleshooting

Your project uses Supabase. Manage your database at supabase.com/dashboard.
  • Liquid Backend: Click the Logs icon and select “Backend” tab
  • Supabase: Logs are only available in the Supabase Dashboard
  • Liquid Backend: Check Specular configuration
  • Supabase: Connection is managed via OAuth; additional vars in MoreEnvironment Variables
  • Liquid Backend: Check backend logs in Natively
  • Supabase: Check API logs in Supabase Dashboard

Next Steps