1.7 KiB
1.7 KiB
Databrowse
SQL data browser. Connects to a database, reads its schema from config, and provides a navigation and query interface.
Status: ready
What It Does
Databrowse is a monitor, not a tool. It runs continuously and lets you browse database contents through a web interface. Navigate tables, inspect rows, run saved queries.
The core is generic SQL. Room configuration defines the schema and saved views.
Structure
soleprint/station/monitors/databrowse/ # Core (generic SQL browser)
cfg/<room>/soleprint/station/monitors/databrowse/depot/ # Room config
Configuration
Room-specific config lives in the depot directory.
schema.json
Defines tables, fields, and relationships:
{
"tables": [
{
"name": "users",
"fields": [
{"name": "id", "type": "integer", "primary": true},
{"name": "email", "type": "string"},
{"name": "created_at", "type": "datetime"}
],
"relationships": [
{"field": "id", "target": "orders.user_id", "type": "one_to_many"}
]
}
]
}
views.json
Defines saved queries:
{
"views": [
{
"name": "Recent Users",
"query": "SELECT * FROM users ORDER BY created_at DESC LIMIT 50"
},
{
"name": "Active Orders",
"query": "SELECT * FROM orders WHERE status = 'active'"
}
]
}
Separation
Core provides:
- SQL connection handling
- Table navigation UI
- Query execution engine
- Relationship traversal
Room provides:
depot/schema.json-- table definitionsdepot/views.json-- saved queries- Database connection credentials
The core knows nothing about your domain. The depot tells it what to show.