Configuration

Tabularis is designed to work perfectly out-of-the-box, but offers extensive configuration options via the UI Settings panel and an underlying config.json file.

Accessing Settings

Open the Settings panel from:

General Settings

Storage Paths & config.json

Tabularis stores non-sensitive configuration, UI preferences, and connection metadata in a central config.json. Passwords and SSH passphrases are NEVER stored here — they live exclusively in your OS keychain.

File Locations

Platform Path
Windows %APPDATA%\tabularis\config.json
macOS ~/Library/Application Support/tabularis/config.json
Linux ~/.config/tabularis/config.json

Manually Editing config.json

You can edit the file manually while the application is closed. Editing while Tabularis is running will likely result in your changes being overwritten when the app writes its state on exit.

A minimal valid config.json looks like:

{
  "theme": "tabularis-dark",
  "language": "auto",
  "fontSize": 14,
  "aiEnabled": false
}

Any key omitted from the file falls back to its default value. You do not need a complete file.

config.json Full Reference

Key Type Default Description
theme string "tabularis-dark" Active UI theme ID. See Themes.
language string "auto" Preferred locale: en, it, es, or auto (follows OS).
resultPageSize number 100 Rows fetched per pagination request in the Data Grid.
fontFamily string "JetBrains Mono" Editor font. Must be installed on the system.
fontSize number 14 Editor font size in pixels.
aiEnabled boolean false Master toggle for all AI features.
aiProvider string "openai" Active AI provider: openai, anthropic, ollama, openrouter, custom-openai.
aiModel string "gpt-4o" The model identifier string sent to the provider.
aiCustomModels object null Custom model lists per provider (map of provider ID → string[]).
aiOllamaPort number 11434 Local port for the Ollama daemon.
aiCustomOpenaiUrl string null Base URL for OpenAI-compatible endpoints (e.g., LM Studio, vLLM).
aiCustomOpenaiModel string null Model name to use with the custom OpenAI-compatible endpoint.
checkForUpdates boolean true Enable or disable update checks entirely.
autoCheckUpdatesOnStartup boolean true Checks GitHub Releases API on boot.
lastDismissedVersion string null Version string of the last dismissed update notification.
erDiagramDefaultLayout string "TB" TB (Top-Bottom) or LR (Left-Right) for Dagre layout.
schemaPreferences object {} Per-connection active schema for DDL operations (map of connection ID → schema name).
selectedSchemas object {} Per-connection visible schemas in the sidebar (map of connection ID → string[]).
maxBlobSize number 1048576 Max bytes to load into UI for BLOB/bytea columns (default 1 MB).
activeExternalDrivers string[] [] List of plugin driver IDs loaded at startup.
customRegistryUrl string null Custom URL for the plugin registry. Overrides the default official registry when fetching and installing plugins.

Application Logs

For debugging connection failures, plugin crashes, or unexpected behavior, Tabularis writes structured logs.

Log File Locations

Platform Path
macOS ~/Library/Logs/tabularis/
Windows %APPDATA%\tabularis\logs\
Linux ~/.cache/tabularis/

Runtime Debug Logging

Launch Tabularis from the terminal with the RUST_LOG environment variable for real-time debug output:

# All debug messages from the Tabularis crate
RUST_LOG=tabularis=debug tabularis

# Debug messages from all crates (very verbose)
RUST_LOG=debug tabularis

# Only errors and warnings
RUST_LOG=warn tabularis

The RUST_LOG directive supports error, warn, info, debug, and trace levels, with info being the default for production builds.

What to Look for in Logs

When troubleshooting a connection issue, search the log file for entries related to the connection UUID:

grep "conn-" ~/Library/Logs/io.github.debba.tabularis/tabularis.log | tail -50

SSH tunnel events are prefixed with [ssh], database driver events with [driver], and plugin events with [plugin:<plugin-id>].

Privacy & Telemetry

Tabularis is built with a strict zero-telemetry policy.

You can verify all outgoing network connections using lsof -i (macOS/Linux) or Resource Monitor (Windows) while the application runs.

Resetting to Defaults

To reset all settings to factory defaults:

  1. Close Tabularis completely.
  2. Delete or rename the config.json file.
  3. Relaunch Tabularis. A fresh config.json with all defaults will be created.

Important: This does NOT delete saved connections. Connection metadata is stored in a separate connections.json file in the same directory. To also remove connections, delete connections.json. Passwords stored in the OS keychain must be removed manually (via Keychain Access on macOS, Credential Manager on Windows, or secret-tool on Linux).