Database Editors¶
Viper provides two GUI applications for exploring and managing databases:
Tool |
Purpose |
Use When |
|---|---|---|
cdbe.py |
CommitDatabase Editor |
Working with versioned data (undo/redo, sync, history) |
dbe.py |
Database Editor |
Simple exploration without commit history |
Both tools are built with PySide6 and share common components from ds_components/.
cdbe.py - CommitDatabase Editor¶
Full-featured GUI for exploring and managing CommitDatabases with version history.
cdbe.py showing commit history, document browser, and database inspector.¶
Launch¶
python3 tools/cdbe.py # Open file dialog
python3 tools/cdbe.py project.cdb # Open specific database
Panels¶
Access panels via keyboard shortcuts:
Panel |
Shortcut |
Description |
|---|---|---|
Commits |
|
Browse commit history (DAG visualization) |
Documents |
|
Browse documents by attachment |
Program |
|
View Program in selected commit |
Settings |
|
Configure synchronization source |
Undo |
|
Undo/redo stack visualization |
Sync Log |
|
Synchronization activity log |
Blobs |
|
Browse blob storage |
Actions |
|
Pending actions queue |
Synchronization¶
cdbe.py supports synchronizing with a remote CommitDatabase server.
Connection Settings:
TCP:
host:port(e.g.,server.local:54321)Unix socket:
/path/to/socket
Sync Operations:
Action |
Description |
|---|---|
Fetch |
Pull commits from remote server |
Push |
Push local commits to remote |
Sync |
Full sync (Fetch + Push) |
Live Mode:
Enable automatic synchronization at configurable intervals:
Live Mode: Auto-sync on timer
Manager Mode: Auto-merge heads during live sync
Inspecting Commits¶
Open the Commits panel (
Cmd+1)Click a commit to select it
Open Commands panel (
Cmd+3) to see mutationsDouble-click a document to inspect its content
Undo/Redo¶
cdbe.py maintains an undo stack for local operations:
Undo:
Cmd+ZRedo:
Cmd+Shift+Z
View the undo stack in the Undo panel (Cmd+5).
dbe.py - Database Editor¶
Simplified GUI for exploring Database files (without commit history).
dbe.py showing document browser and database inspector.¶
Launch¶
python3 tools/dbe.py # Open file dialog
python3 tools/dbe.py project.vpr # Open specific database
Features¶
Feature |
Description |
|---|---|
Document Browser |
Browse documents by attachment |
Blob Viewer |
Inspect binary blob content |
Database Inspector |
View UUID, codec, definitions |
Network Connection |
Connect to remote Database server |
When to Use dbe.py vs cdbe.py¶
Scenario |
Tool |
|---|---|
Explore versioned data with history |
cdbe.py |
Simple database inspection |
dbe.py |
Synchronize with remote server |
cdbe.py |
Debug blob storage |
Either |