Grovely
How it works

From a folder of files
to a question you can ask.

Five things happen between the drop and the first dashboard. Each one waits for you where it matters.

The import plan

Drop CSV, Excel or zip files — several at once is fine. Grovely reads the structure: encoding, delimiter, header, row count, and a type for every column from its first 10,000 rows. Then it shows you the plan: one card per table, its columns and types, the key it would use and why, and how the tables join. Rename a table, retype a column, untick what you don't want. Nothing exists in your workspace until you press Import.

Screenshot to come · the import plan

The Map

Once loaded, every table is a card on the Map: its rows, its key, its columns, and a dot that says how current it is. Relationships are lines between the cards. Before one is applied it is validated against the data — types, uniqueness, orphans — and when rows don't match you get three honest choices: fix the data, join without a constraint, or say it isn't a relationship. An invalid constraint is never created.

Screenshot to come · the Map

Understanding

Every table is read for what it is: its domain, its grain (“one row per order line”), its measures, its time column, and anything sensitive — salaries, personal details, account numbers. Rules do this first, with no model at all; the model, when your workspace allows it, may add a sensitivity but never remove one. You confirm, edit or ignore the result. It labels things. It never grants anything.

Screenshot to come · a table's understanding, proposed

Roles

Give a role a name and a sentence. You get the tables it should probably see, grouped by confidence, each with its reason. Sensitive tables are never pre-ticked unless the sentence names what they hold. Save grants exactly what is ticked; until then, a new table is the admin's alone.

Screenshot to come · a role's proposed tables

View as

Pick a role and the whole workspace answers as that role would — the shelf, the dashboards, the questions and the refusals — checked in the database, not merely hidden on screen. An amber line says whose eyes you're borrowing. It ends when you say Stop, or after an hour.

Screenshot to come · viewing as a role