Features
Everything WebF1 DataPad does
A data workbench for programmers and DBAs: write C# against a named connection, read the results in a grid, and add the optional capabilities when they fit your workflow.
The workbench
Three panes, one window, sizes that persist.
Connections panel, editor and output
The connections panel on the left lists your databases and their schema trees. The C# editor in the middle is where you write scripts. The output pane on the bottom holds the ordered results of a run. Drag any divider to resize a pane.
Read the getting started guideScripts and tabs
Write C# and run it with F5 or the Run button. Multiple scripts open as tabs, each with a dirty marker, and scripts are saved as .wf1dp files. Changed tabs autosave so a crash does not lose them.
Read the scripts guideDump() results
Call Dump() to append an ordered block to the output pane: scalars become value blocks, sequences become table blocks with a labelled total, a single object becomes a property block, and a labelled Dump places its label above the value.
Read the results grid guideIntelliSense
The editor completes table and column names, types and members as you type, from the live connection's host-backed analysis. Suggestions are typed and filtered, so the workbench's own model drives the completion list.
Read the scripts guideEditor diagnostics
A compile failure underlines the exact statement and the popup shows the compiler's real message and line number, so the error is fixed in place instead of in a separate build window.
Read the troubleshooting guideConnections and schema
Read the database the way the database describes itself.
Connection-string connections
Add a connection by name and connection string for PostgreSQL, SQL Server or SQLite. Add saves without contacting the database, so an offline server or a typo cannot block it. Test probes a string without saving, Refresh re-introspects, and Edit reopens the dialog pre-filled.
Read the connections guideEF DLL connections
Point at a compiled Entity Framework assembly instead of a live database. Inspect loads it and discovers its DbContexts, you pick one, and the schema comes from the assembly's model. Under Free an EF DLL connection is added session-only; saving it is a Pro capability.
Read the connections guideSchema tree
Each connection expands into its databases, schemas, tables, views and columns, with provider type, primary-key, nullable, identity and JSON markers. A table's Relationships group lists each relationship with its direction glyph, related table and the column they run through.
Read the connections guideProduction and read-only flags
Mark a connection production to badge it and give its script tab an accent left margin. Mark it read-only to lock the write paths behind a lock badge while reads keep working. Both flags update live with no restart.
Read the connections guideResults and editing
Change data in the grid, drill into related records, author JSON.
Edit the grid
Turn on Edit mode to change cells, insert rows with + Insert row, and delete rows with a selection column. Save applies every pending change and reads the stored rows back, so the grid shows database-generated values; each table's insert and delete set is applied in one transaction.
Read the results grid guideCreate a JSON document
Author a document for a column that holds JSON: open a NULL cell through the { } create affordance and edit it in the property-column grid, then save the whole document in one update. No hand-written JSON string is required.
Read the json columns guideNavigation and drill-in
A related-record cell renders as a navigation chip; click it to open an inline detail strip under the row. The chain can be followed several levels deep, with the depth shown and cycles blocked with the real reason, so a path can never loop forever.
Read the navigation guideJSON columns
A text column can hold JSON documents. DataPad marks it with a JSON badge and a nested graph, and renders each cell as a { } JSON chip you can open as a tab. Grid-first authoring lets you edit an array as a property-column grid and save the whole document in one update.
Read the json columns guideNuGet packages
Attach NuGet packages to a script from the toolbar's Packages control. Search the registry, add a package and its version, and the installer resolves the script's whole package list to its closure, cache-first. Usings and packages travel with the script when it is saved.
Read the packages guideSettings and security
Themes, encryption, backup, shortcuts and the MCP server live under View, Settings.
Themes and accents
Three themes - Dark (default), Black and Light - plus Auto, which follows the operating system and never resolves to Black. Eight accent colours drive selection tints, markers and grid affordances independent of the theme.
Read the themes guideEncryption and backup
Encrypt the connection strings at rest with a phrase, lock and unlock the session, and change or clear the phrase. Back up the whole app data folder to a folder you choose and open the result in your file manager. Encryption is a Pro capability; backup is free.
Read the encryption backup guideShortcuts
Remap the run, comment and uncomment chords in Settings, Shortcuts. A remap takes effect immediately and survives a restart; a chord is supported, and a collision with another action is stated rather than hidden.
Read the shortcuts guideMCP server
Run a local Model Context Protocol server so an AI agent can read your connections and scripts. It is localhost-only, bearer-token protected and per-tool toggled, and its help tools serve this same article set to the agent. The server is a Pro capability.
Read the mcp server guideMCP server in action
The agent does the work, not just the reading: ask it to write a script and it creates one in DataPad against the connection it looked up, ready to run. The same server lets an agent read connections, schemas and open scripts, with every tool individually toggleable.
Read the mcp server guideLicensing
DataPad runs free. A Pro licence unlocks EF DLL saves, IntelliSense, the editor error popup, the JSON structure editor, connection encryption and the MCP server. A licence key is validated when it is entered and may be revalidated periodically.
Read the licensing guideError surfacing
Failures are never generic: the UI shows the error code, the real message, the channel it came from, and a detail line naming the exact state. Connection strings are masked in every error and log, and a failed backup or run reports its real structured reason.
Read the troubleshooting guide