TableX

The classic phpMyAdmin experience for MySQL, MariaDB, PostgreSQL and SQLite — one self-contained binary, no PHP, no Node, no runtime dependencies. Open source, MIT.

Install

Linux / macOS

curl -fsSL https://tablex.dev/install.sh | sh

Windows (PowerShell)

irm https://tablex.dev/install.ps1 | iex

Windows (cmd.exe)

curl -fsSLO https://tablex.dev/install.cmd && install.cmd

Then run tablex and open http://localhost:8080. The scripts verify every download against signed checksums before installing — read them first if you like: install.sh · install.ps1 · install.cmd.

Prefer a package? Every release ships .deb and .rpm packages plus archives for six OS/architecture targets. Or use the container image:

docker run -p 8080:8080 ghcr.io/tablexdev/tablex

The binaries are open-source builds without paid OS signing certificates: macOS Gatekeeper and Windows SmartScreen may warn on first launch. The verification steps below are the stronger check — they prove a download came from this project's release pipeline.

One tool, four engines

EngineSupportedDriver
MySQL8.0 and newerpure-Go, no client libraries needed
MariaDB10.6 and newerpure-Go, no client libraries needed
PostgreSQL13 and newerpure-Go, no client libraries needed
SQLitebundledpure-Go, works on a plain file

The classic UI

Faithful to phpMyAdmin's layout, navigation and workflows — browse, query, import, export, users, privileges — modernized carefully, never degraded.

One static binary

Assets embedded, cross-compiled for Linux, macOS and Windows on amd64 and arm64. Download, run, done.

Security first

CSRF-protected everywhere, strict CSP without unsafe-eval, parameterized SQL, credentials never persisted or logged.

Honest exports

Dumps are round-trip tested in CI: export, drop, re-import, compare — against live MySQL, MariaDB and PostgreSQL servers.

Verify a download

Each release publishes a SHA256SUMS file that covers every artifact, signed keylessly with cosign and attested by GitHub. Three independent checks:

# 1. Checksums (after downloading SHA256SUMS next to your artifact)
sha256sum -c SHA256SUMS --ignore-missing

# 2. Cosign signature, bound to the release workflow's identity
cosign verify-blob \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com \
  --certificate-identity-regexp 'https://github.com/tablexdev/tablex/.github/workflows/release.yml@.*' \
  --signature SHA256SUMS.sig --certificate SHA256SUMS.pem \
  SHA256SUMS

# 3. GitHub build-provenance attestation
gh attestation verify SHA256SUMS --repo tablexdev/tablex \
  --signer-workflow tablexdev/tablex/.github/workflows/release.yml

The install scripts do #1 automatically and #3 when the GitHub CLI is available. Container images are signed too: cosign verify ghcr.io/tablexdev/tablex:<tag>.