ReportGen
Reports From Any Database, Built From Its Own Catalogue
Self-hosted reporting and dashboards for any relational database. Point it at PostgreSQL, MySQL, SQL Server, Oracle, Snowflake, Redshift, DuckDB, SQLite or a REST API — its tables become the report list, its columns the picker. Build, chart, export, schedule, share, embed and call reports by API, read-only by construction.
ReportGen builds reports from any relational database using the database's own catalogue. Connect it and the tables become the report list, the columns become the picker, and each column's type decides which filters are offered. Joins are suggested from foreign keys, and the builder covers a filter tree, period controls, aggregates, window columns, two-stage aggregation, subtotals and pivot tables — with Show SQL and EXPLAIN for anyone who wants to see what runs. It ships with no bundled templates: every report in it is built by someone who works there, against their own data.
It works across eight SQL engines — PostgreSQL, Redshift, MySQL/MariaDB, SQL Server, Oracle, Snowflake, DuckDB and SQLite — plus HTTP/REST APIs returning JSON, NDJSON or CSV, which are paged, flattened into columns and queried like any other table. A question box turns plain words such as "total revenue by region last quarter" into an editable builder report, read from the catalogue and an administrator's synonyms, with no AI model or outside service involved. For the questions the builder cannot express, SQL Lab offers a schema-aware editor, saved and shared queries, history and charts on the result.
Results become tables, pivots, and fifteen chart types from bar and line to funnel, treemap, gauge and KPI tiles. Dashboards add shared filters and time ranges, cross-filtering by click, drill-down to the rows behind a figure, live refresh down to five seconds, TV mode, share links and version history. A semantic layer defines metrics and calculated columns once, so every report agrees on what "revenue" means. Exports to CSV, XLSX and PDF are streamed and identical to what is on screen.
Safety is built into the compiler rather than bolted on: connections are read-only by construction, values are always bound parameters, identifiers come only from the catalogue allow-list, credentials are encrypted, column and row policies apply on every surface, and every run writes an audit row. Reports reach people through saved views, link shares, iframe embeds with signed row scope, a run-by-API endpoint, and scheduled delivery by email, Slack, Teams or webhook — plus threshold alerts. ReportGen is single-tenant and self-hosted, deployed with Docker next to your data, directly or through an SSH bastion. Innoworks can install it, connect your databases and build your first reports and dashboards with your team.
Supported Technologies
Built on industry-leading frameworks and models
Connect Any Database
Eight SQL Engines
PostgreSQL, Redshift, MySQL/MariaDB, SQL Server, Oracle, Snowflake, DuckDB and SQLite — each with its own dialect for quoting, paging and placeholders, so the SQL that runs is native to the engine.
HTTP / REST APIs as Tables
Point a connection at an API and each endpoint becomes a table. Bearer, basic or API-key auth; page, offset, cursor or Link-header pagination; nested JSON flattened into columns.
Built From the Catalogue
Tables become the report list, columns the picker, and each column's type decides which filter operators appear. Joins are suggested from foreign keys.
Direct or Through an SSH Bastion
Reach databases on private networks through an SSH tunnel opened by the app and forwarded on loopback only. Password, AWS IAM and Microsoft Entra database authentication.
Report Builder & SQL Lab
Point-and-Click Builder
A filter tree, a period control, aggregates, window columns, share-of-total, two-stage aggregation, subtotals and pivot tables — with Show SQL and EXPLAIN on every report.
Ask in Plain Words
Type "top 5 customers by revenue" or "shipped orders in North last 30 days" and get an editable builder report. Read from the catalogue and your synonyms — no AI model, no outside service, the same answer every time.
Fan-Out Protection
Summing across a one-to-many join silently inflates totals. ReportGen detects it from the foreign keys, warns, and offers a join-a-summary fix that groups the many side first.
SQL Lab for Analysts
Tabs, a highlighted editor with schema-aware autocomplete, run selection, Format, Explain, saved and shared queries, history, CSV and charts — all inside a read-only transaction.
Charts & Live Dashboards
Fifteen Ways to Show a Result
Table, pivot, bar, stacked bar, line, area, pie, scatter, heatmap, KPI, table-with-sparkline, big number with trend, gauge, funnel, treemap and histogram.
Interactive Dashboards
Dashboard-wide filters and time ranges, cross-filtering by click, drill-down to the rows behind a figure, drill-through to another report, text tiles and tabs.
Live Refresh & TV Mode
Refresh down to every five seconds without twenty screens meaning twenty queries — identical statements are shared. Full-screen TV mode for operations floors.
History, Export & Import
Every dashboard keeps its last fifty arrangements for one-step restore, and exports to JSON for moving between installs — no data, no credentials.
Semantic Layer
Metrics Defined Once
Datasets hold metrics like revenue and average order value, and calculated columns like order size, in a small formula language. Fix a definition and every report using it is fixed.
Certified Datasets
Administrators mark the agreed definitions as certified so they are shown first, and a metric a report depends on cannot be deleted from under it.
Safe Formula Language
Column names, numbers, comparisons and a fixed list of functions — compiled through the same allow-list as filters, with every value bound and division by zero left blank.
Shared Result Cache
A per-connection cache shared by the app and its workers, off until an administrator sets how stale an answer may be — and never shared across row scopes.
Delivery, Sharing & Embedding
Exports That Match the Screen
CSV, XLSX and PDF are streamed and use one ordered column list, so what you send a client is exactly what you saw.
Schedules & Alerts
Scheduled delivery by email, Slack, Microsoft Teams and webhooks, plus alerts that fire once when a threshold is crossed and stay quiet until it clears.
Embeds With Row Scope
Embed reports in your own application with a signed token that carries the row scope. A scoped view refuses to run without one — it fails closed, never open.
Run Reports by API
Call any saved report as JSON, CSV, XLSX or PDF with a key scoped to named reports. Every API call lands in the same audit log as a run from the app.
Security & Governance
Read-Only by Construction
Connect as a SELECT-only role; the API accepts a report definition, never SQL. Values are always bound parameters and identifiers only ever come from the catalogue.
Column & Row Policies
Hidden columns are removed from the catalogue before anything sees them, masks apply on every surface, and row scope is enforced by the compiler so no caller can forget it.
Roles, Folders & Projects
Administrator, author and viewer roles, folder-level groups, and projects that keep each client's or product's connections and reports in separate workspaces.
Audit Every Run
Every run, export, share and API call writes an audit row. Database credentials and webhook secrets are encrypted at rest.
Built for Teams That Demand More
Companies that want self-hosted reporting on their own databases without a per-seat BI subscription
Operations, finance and sales teams who need governed, repeatable reports and dashboards without writing SQL
Software vendors embedding customer-facing reports in their product with per-customer row scope
Data and engineering teams consolidating ad-hoc SQL, spreadsheets and emailed exports into one audited tool
Frequently Asked Questions
Get answers to common questions about ReportGen.
QWhat is ReportGen?
ReportGen is a self-hosted reporting and dashboard tool for relational databases. You point it at a database, and its tables, columns and foreign keys become a report builder — with charts, dashboards, exports, schedules, alerts, shares, embeds and an API on top.
QWhich databases does ReportGen support?
PostgreSQL, Amazon Redshift, MySQL/MariaDB, SQL Server, Oracle, Snowflake, DuckDB and SQLite, plus HTTP/REST APIs that return JSON, NDJSON or CSV. Databases on private networks can be reached through an SSH bastion.
QDoes ReportGen need people to know SQL?
No. The builder is point-and-click, and the question box turns plain-word questions into editable reports. Analysts who prefer SQL get SQL Lab, and every builder report can show the SQL it runs.
QCan ReportGen change data in our database?
No. It is read-only by construction: connections use a SELECT-only role, the API accepts report definitions rather than SQL, and hand-written SQL in SQL Lab runs inside a read-only transaction. Writing to target databases is deliberately out of scope.
QCan we embed ReportGen reports in our own product?
Yes. Reports embed as iframes using a signed token minted by your application, carrying the report, parameter values, an expiry and the row scope — so each of your customers sees only their own rows. Reports can also be run directly through the API.
QDoes the question box use AI or send our data anywhere?
No. It reads a fixed vocabulary of words plus your database's own table names, column names and the synonyms an administrator adds. There is no model and no outside service, and the same question always produces the same report.
QHow is ReportGen deployed?
It is single-tenant and self-hosted: one install per company, run with Docker Compose (the app, a background worker and its own database) or on any Node.js host with PostgreSQL. Projects let one install serve several clients or products side by side.
QDoes it come with ready-made report templates?
No — by design. Every report is built on your own data by people who know it. Innoworks can help you install ReportGen, connect your databases, define your metrics and build the first set of reports and dashboards.
Ready to Get Started with ReportGen?
Schedule a demo or talk to our team about your requirements.
Explore More Products
Discover other solutions from Innoworks
ForgeAI
Enterprise AI/ML Operations Platform
End-to-end platform for data ingestion, labeling, LLM fine-tuning, RLHF alignment, evaluation, deployment, and production monitoring — built for teams that need full control over their AI pipeline.
Corebots.ai
The Governance Plane for Enterprise AI Agents
Change-control and runtime layer for enterprise AI agents — approval workflows with side-by-side diffs, 9-role RBAC, immutable activity audit, MCP-native tool access, and a model-agnostic runtime. Automate your business or embed it inside the product you ship — in our cloud, your cloud, on-prem, or fully air-gapped.
innoAPM
Catch Every Error. Know Exactly What Broke.
Self-hostable application performance monitoring and error tracking — errors, traces, logs, metrics, CPU profiles, session replay, release health, uptime and alerts in one platform. Drop in an SDK for Node, the browser, Next.js, React Native, Android, iOS or .NET, or point any OpenTelemetry exporter at it.
Let's Build Something Amazing Together
Ready to transform your business with innovative technology solutions? Our team of experts is here to help you bring your vision to life. Let's discuss your project and explore how we can help.
Email Us
info@innoworks.techMVPs in Weeks, Not Months
Launch your product faster with our proven development cycle
Global Presence
Offices in USA & India, serving clients worldwide