report_table_builder 1.0.8
report_table_builder: ^1.0.8 copied to clipboard
A report table builder flutter widget for your flutter applications.
๐ flutter_report_table_builder #
A customizable and responsive Flutter table widget builder designed for complex, nested headers and dynamic data visualization. Ideal for enterprise dashboards, inventory tracking, or structured report UIs.

โจ Features #
- Build highly structured tables with:
- Main and sub headers
- Sticky left-side columns (like Excel-style freeze panes)
- Scrollable content region
- Dynamic column groupings with nested data structure
- Smooth horizontal and vertical scrolling
- Fully customizable header and cell styles
- Easy data binding via
ReportTableModel
๐ Getting Started #
To integrate report_table_builder into your Flutter project:
1. Add dependency #
dependencies:
flutter_custom_table:
git:
url: https://github.com/mehedisoftdev/flutter_custom_table.git
2. Import Required Models #
import 'package:report_table_builder/report_table/models/table_data_place_holder.dart';
import 'package:report_table_builder/report_table/models/table_header_model.dart';
import 'package:report_table_builder/report_table/models/report_table_model.dart';
๐งฉ Data Setup #
List<String> mainHeadersTitle = [
"ID",
"Category",
"Brand",
"Price",
"Stock",
"Sell_Date",
];
Map<String, List<String>> subHeadersTitleList = {
"Brand": ["Transtec", "Hitachi", "Samsung"],
};
List<TableDataPlaceHolder> rowData = [
TableDataPlaceHolder("Outlet 1", {
"ID": "1",
"Category": "GTM",
"Transtec": "Light",
"Hitachi": "Freeze",
"Samsung": "Mobile Phone",
"Price": "1000",
"Stock": "10",
"Sell_Date": "2024-06-01",
}),
];
ReportTableModel table = ReportTableModel(
leftPortionHeader: "Channel",
leftPortionSubHeader: "Region",
rightPortionHeadersTitle: mainHeadersTitle,
rightPortionSubHeadersTitleList: subHeadersTitleList,
rowItems: rowData,
);
๐งช Usage Example #
import 'package:report_table_builder/report_table_builder.dart';
...
ReportTableBuilder(
header: "Custom Table",
subHeader: "Region",
stickyColumnWidth: 140,
headerHeight: 60,
subHeaderHeight: 40,
rowData: rowData,
tableModel: table,
leftController: ScrollController(),
)
๐ Example Output #

๐ License #
ยฉ 2025 Fahad Mia & Mehedi Hasan
This software is licensed under a custom license. Usage is permitted in personal and commercial projects, but:
- โ No redistribution or resale
- โ No modification of the source
- โ Attribution required
See LICENSE file for full terms.
๐ฌ Support & Contributions #
For issues, feature requests, or contributions, feel free to open a GitHub Issue.