Skip to content

Repository files navigation

squad — a single-binary, web-based SQLite client

Release

A minimal, single-binary, dual mode (CLI + WebUI) SQLite client.

squad is a lightweight developer tool that lets you explore, query, edit, and export SQLite databases from a modern browser—without installing a desktop application or running Docker.

Simply point it at an SQLite database and it launches a local web interface.

$ squad ./app.db

squad v1.0.0
database : ./app.db
address  : http://127.0.0.1:7071
press Ctrl+C to stop

Open the displayed URL in your browser and start working with your database.


Why squad?

  • 🚀 Single executable (no dependencies)
  • 🔒 Safe by default (read-only mode)
  • 🌐 Modern browser-based interface
  • ⚡ Starts in under a second
  • 📦 Cross-platform
  • 🛠 Built specifically for developers

Features

Database Explorer

  • Browse all tables
  • View schemas
  • Inspect indexes
  • Explore foreign keys
  • Navigate large datasets

SQL Editor

  • Execute SQL interactively
  • Syntax highlighting
  • Query history
  • Multiple output formats
  • Copy results

Data Management

Write mode enables:

  • Insert records
  • Update records
  • Delete records
  • Create tables
  • Alter tables
  • Drop tables

Write operations are disabled by default and require the --write flag.

Export

Export query results as:

  • CSV
  • JSON
  • SQL INSERT statements

Fake Data Generator

Populate tables with realistic sample data for development and testing.

REST API

Optionally expose database tables as REST endpoints.

Local Web UI

  • Responsive interface
  • Light & Dark themes
  • Embedded frontend
  • No internet connection required

Rich CLI

  • Interactive shell
  • Command-line flags
  • Dot commands
  • Query history
  • Seed tables with fake data
  • Template functions
  • Template support for SQL queries.

Installation

Homebrew (macOS/Linux):

brew install 0funct0ry/squad/squad

curl install script:

curl -fsSL https://raw.githubusercontent.com/0funct0ry/squad/main/scripts/install.sh | sh

Docker:

docker run --rm -p 7071:7071 -v $(pwd):/data ghcr.io/0funct0ry/squad:latest /data/your.db

Scoop (Windows):

scoop bucket add squad https://github.com/0funct0ry/scoop-squad
scoop install squad

Download a release binary: grab the archive for your platform from the Releases page and place the squad binary on your PATH.

go install:

go install github.com/0funct0ry/squad@latest

Build from source:

git clone https://github.com/0funct0ry/squad
cd squad
make build

No installation, runtime, or database server is required beyond the binary itself.


Quick Start

Open a database:

squad ./database.db

Open in write mode:

squad ./database.db --write

Enable REST endpoints:

squad ./database.db --rest

Choose a custom port:

squad ./database.db --port 8080

Bind to a custom address:

squad ./database.db --addr 0.0.0.0

Command Line

squad [database] [flags]

Common flags:

Flag Description
--write Enable data modifications
--rest Enable REST endpoints
--addr Server bind address
--port HTTP port
--readonly Force read-only mode
--help Show help

Interactive CLI

squad also includes an interactive shell for quick database operations.

Example:

squad cli database.db

Supports:

  • SQL execution
  • Query history
  • Dot commands
  • Multiple output formats

REST API

When REST mode is enabled, squad exposes JSON APIs for:

  • Table CRUD (write mode)

Example:

GET /rest/contacts?limit=10"
GET /rest/contacts/:pk
POST /rest/contacts
PATCH /rest/contacts/:pk
DELETE /rest/contacts/:pk

Safety

Security is a core design goal.

By default:

  • Database is opened read-only
  • Server binds to 127.0.0.1
  • No authentication is required because it is intended for local development
  • Destructive operations are disabled

Write access requires explicit user opt-in.


Project Goals

  • Zero configuration
  • Single binary
  • Fast startup
  • Local-first
  • Developer-friendly
  • Safe defaults
  • Modern user experience

Typical Use Cases

  • Application development
  • SQLite inspection
  • Local debugging
  • API prototyping
  • Data exploration
  • QA testing
  • Demo databases
  • Fake data generation

Roadmap

  • AI-assisted SQL
  • SQL editor improvements
  • Code generation

Contributing

Contributions, feature requests, and bug reports are welcome.

Please open an issue before submitting large changes. See CONTRIBUTING.md for build/test instructions and the PR process.


License

MIT


About

🤖 A minimal, single-binary, dual mode SQLite client

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages