A lightweight, self-hosted PostgreSQL UI inspired by Supabase Studio.
Open-Studio extracts and refactors Supabase Studio's powerful database editor and query interface into a standalone local web application that connects directly to any PostgreSQL instance—no authentication, storage, or cloud dependencies required.
This project was inspired by Simon Høiberg's tweet about the need for a local-first PostgreSQL UI tool.
- Database Editor: Browse tables, schemas, and run queries directly
- Query Interface: Execute SQL queries with a clean, intuitive interface
- Local-First: Runs entirely on your machine, no cloud required
- Docker-Ready: Simple deployment with
docker-compose up - Direct PostgreSQL Connection: Connect to any PostgreSQL instance via standard connection string
Open-Studio is a standalone implementation inspired by Supabase Studio's database editor. Due to Studio's tight integration with Supabase's cloud infrastructure, internal monorepo packages, and authentication systems, we've created a standalone app using Studio's core libraries:
- Monaco Editor - Professional SQL editing experience
- TanStack Query & Table - Efficient data management
- Direct PostgreSQL - Using node-postgres (pg) for database connectivity
- No Cloud Dependencies - Fully self-contained
For detailed information about the extraction approach, see SETUP.md.
- Clone the repository:
git clone https://github.com/andersmyrmel/open-studio.git
cd open-studio- Create a
.envfile with your PostgreSQL connection:
DATABASE_URL=postgresql://user:password@localhost:5432/mydb
PORT=3000- Start the application:
docker-compose up- Open your browser to
http://localhost:8080
cp package-open-studio.json package.json
npm install
# or
pnpm install- Set up your
.envfile (copy from.env.example):
cp .env.example .env- Run the development server:
npm run dev
# or
pnpm devversion: '3.8'
services:
open-studio:
build: .
ports:
- "8080:3000"
environment:
- DATABASE_URL=postgresql://user:password@host.docker.internal:5432/mydb
- PORT=3000
restart: unless-stoppedOpen-Studio uses environment variables for configuration:
| Variable | Description | Default |
|---|---|---|
DATABASE_URL |
PostgreSQL connection string | Required |
PORT |
Port for the web server | 3000 |
For detailed information about the technical architecture, see ARCHITECTURE.md.
See ROADMAP.md for the project's development roadmap and planned features.
See PLAN.md for the detailed implementation plan.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Open-Studio is licensed under the Apache 2.0 License. See LICENSE for details.
- Based on: Supabase Studio - The open-source PostgreSQL UI that powers Supabase
- Inspired by: Simon Høiberg (tweet)
- License: Apache 2.0
Open-Studio is a focused extraction of Supabase Studio's database UI. We've removed:
- Authentication and user management
- Storage and file management
- Realtime subscriptions
- Cloud hosting dependencies
- Multi-project management
- API key management
What remains is a clean, local-first PostgreSQL UI perfect for local development and self-hosted deployments.