Flase
NEWVersion 0.8 - see what changed

The modern phpMyAdmin alternative for MySQL, MariaDB and PostgreSQL

Flase is a fast, open source web database client with the comfort of desktop tools like DataGrip, DBeaver or HeidiSQL - running in the browser, self-hosted in one Docker container.

  • MySQL
  • MariaDB
  • PostgreSQL
  • Free & open source
localhost:3001
Flase data grid with inline editing, filters and tabs of a MySQL table
25×faster than phpMyAdmin
on 1000 rows
3database engines
in one interface
1Docker container,
one port
0 €free and open source,
AGPL-3.0
Why Flase

Built for everyday work with real databases

The convenience of a desktop database IDE, with the reach of a web application your whole team can open.

Made for daily work

Virtualized data grid with thousands of cells, inline editing, multi selection and keyboard shortcuts.

Safe for production

Read only connections enforced by the server, colored connections and SQL preview of every change.

Works where your database is

Deploy one container next to the database. Connections predefined by administrator, TLS and SSH tunnels built in.

One tool for three engines

The same interface for MySQL, MariaDB and PostgreSQL - no more switching between phpMyAdmin and pgAdmin.

Features

Everything from phpMyAdmin, and much more

Tools you know from desktop database clients, in a browser tab.

Spreadsheet-like data grid

Browse and edit millions of rows as comfortably as a spreadsheet.

  • Inline editing with editors for long texts, JSON and binary values
  • Pending changes with SQL preview, submit with Ctrl + S
  • Copy as TSV, CSV, JSON, Markdown or SQL INSERT; export to Excel, ODS, PDF
  • Foreign key navigation, quick filters, multi-column sorting
  • Charts of results and maps of spatial values
Data grid
Editing rows of a table in the Flase data grid

SQL console with completion

Write, run and understand queries without leaving the browser.

  • Monaco editor with completion of tables, columns and keywords
  • Many statements in one run, results in tabs, timing and affected rows
  • Execution plan as a tree with costs and full scans marked
  • Query parameters, history, saved queries and cancel of running queries
  • UPDATE / DELETE without WHERE needs confirmation
SQL console
SQL console of Flase with query results and execution messages

ER diagram of your database

See how tables are connected and change relations right on the diagram.

  • Tables and foreign keys laid out automatically, movable by mouse
  • Hover a table to highlight its relations
  • Draw a relation between columns - the foreign key is created with SQL preview
  • Filter with related tables, zoom and export to SVG
ER diagram
ER diagram of a MariaDB bookstore database in Flase with tables and foreign key relations

Visual query builder

Build SELECT queries with joins without writing SQL - and learn the SQL on the way.

  • Add tables - joins are created from foreign keys, or drawn by mouse
  • Pick columns, aliases, aggregates, filters and sorting
  • Live SQL next to the canvas, run it in console or save as a view
  • INNER, LEFT, RIGHT and CROSS joins from the menu of a line
Query builder
Visual query builder of Flase joining customers, orders, order items and books with live SQL

Structure

  • Tables, columns, indexes and foreign keys
  • Every DDL statement previewed
  • Views, triggers, procedures, events

Import and export

  • Streamed SQL dumps, also gzip
  • SQL and CSV import with mapping
  • CSV, XLSX, ODS, JSON, XML, PDF

Visual tools

  • ER diagram with SVG export
  • Visual query builder, live SQL
  • Schema compare with migration

Server administration

  • Live monitor and variables
  • Advisor, processlist, replication
  • Users, roles and privileges
Security

Your database never faces the browser

Only the Flase server talks to the database - users get exactly the connections you allow.

  • TLS / SSL to the database with own CA and client certificates
  • SSH tunnel through a bastion or jump host, with host key verification
  • Predefined connections with read only mode enforced by the server
  • Passwords never stored on the server; optionally remembered in the browser, encrypted with AES-GCM
New connection
New connection form of Flase with TLS and SSH tunnel settings
Performance

Faster than phpMyAdmin

Flase renders only visible rows and columns, so large results stay fast. Same MariaDB 11.4 table of 50 columns, Chromium, median of 7 runs - lower is better.

SQL query, 1000 rows × 50 columns - run to rendered rows 25× faster

Flase
541 ms
phpMyAdmin
13,578 ms

Browse table, 100 rows - click to rendered rows 5.6× faster

Flase
239 ms
phpMyAdmin
1,350 ms

DOM elements on the page, 1000 rows 32× fewer

Flase
4,083
phpMyAdmin
129,272

Flase 0.7, phpMyAdmin 5.2.3. Full results and the benchmark script are in the README on GitHub.

Quick start

Up and running in one minute

Run one container, open http://localhost:3001 and add a connection like mysql://db-host:3306 or postgresql://db-host:5432/database.

terminal
$ docker run -d --name flase -p 3001:3001 \
    -e JWT_SECRET=$(openssl rand -hex 32) \
    backen/flase:latest

All options are described in the configuration section. Image on Docker Hub.

FAQ

Frequently asked questions

Is Flase free?

Yes. Flase is free and open source software under the GNU AGPL 3.0 license - you can use it also commercially.

How is Flase different from phpMyAdmin and Adminer?

Flase supports MySQL, MariaDB and PostgreSQL in one interface, renders large results much faster, previews SQL of every change and has tools of desktop clients: SQL completion, execution plans, ER diagrams, schema compare, SSH tunnels.

Does it replace pgAdmin?

For everyday work - browsing and editing data, structure, SQL, import and export, users and server monitoring - yes. A connection without database shows all databases with their schemas, like pgAdmin.

Is it safe to use with a production database?

Connections can be predefined by administrator with read only mode enforced by the server, every change is shown as SQL before it is executed, and the database is reachable only from the Flase server.

What do I need to run it?

Only Docker. Flase is one container with the application, API and websocket on one port.

Give your database a better manager

One command, no installation on your computer. Free forever, open source.