Search packages, repositories and app categories

atreeon_datagrid_responsive cover
Package detailsv0.4.0

atreeon_datagrid_responsive

A datagrid with sorting and filtering capabilities. It is also responsive to screen size. Fully Typed.

30-day downloads
81
Likes
7
Pub points
60

Install package

flutter pub add atreeon_datagrid_responsive

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A responsive Flutter datagrid package offering sorting and filtering functionalities with full type safety. Designed to adapt seamlessly to various screen sizes, it ensures a consistent user experience across devices. Built with Dart's strong typing, it enhances code reliability and developer productivity. Ideal for applications requiring structured data display with interactive features. The package is maintained by atreeon.com and hosted on GitHub for transparency and community contributions.

Use cases

  • Displaying structured data in apps
  • Implementing sortable and filterable tables
  • Creating responsive data interfaces
  • Building admin dashboards
  • Managing large datasets interactively

Key features

  • Responsive design for all screen sizes
  • Built-in sorting and filtering
  • Fully typed with Dart generics
  • Type-safe data handling
  • Easy integration with Flutter
  • Clean, maintainable code structure

Suitable for

  • Developers building data-heavy Flutter apps
  • Teams prioritizing type safety
  • Projects requiring responsive table components
  • Admin panels and data management tools
  • Apps targeting multiple device sizes

Considerations

  • Requires Flutter SDK setup
  • Limited to table-specific use cases
  • No built-in pagination
  • May need custom styling for advanced UI
  • Depends on external maintenance via GitHub

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

atreeon_datagrid_responsive

A datagrid with sorting and filtering capabilities. It is also responsive to screen size. Fully Typed.

atreeon_datagrid_responsive example

Simple Demo

see examples folder for more examples

class SimpleDemo extends StatelessWidget {
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        children: [
          Expanded(
            child: ResusableDatagridW<Item>(
              data: originalData,
              fields: [
                Field<Item>((x) => x.name, "name", FilterFieldString()),
                Field<Item>((x) => ramLookup[x.ram] ?? x.ram.toString(), "ram", FilterFieldNum()),
                Field<Item>((x) => x.price, "price", FilterFieldNum()),
                Field<Item>((x) => x.storage, "storage", FilterFieldNum()),
              ],
              onRowClick: (x) => print(x.toString()),
              lastSaveDate: null,
            ),
          ),
        ],
      ),
    );
  }
}

class Item {
  String name;
  int ram;
  int price;
  int storage;

  Item(this.name, this.ram, this.price, this.storage);
}

var originalData = List<Item>.generate(
    2000,
    (i) => //
        Item("id: $i", i * 2, i ~/ 2, i + 500));

var ramLookup = {64: "sixtyfour", 1: "one", 128: "one hundred & twenty eight"};


Features

  • multi select over multiple pages
  • sorting and secondary sort capabilities
  • typed filtering
  • vertical responsive design (or fixed height)
  • paging or no paging

Limitations

  • no cell editing capability (you can open a dialog on click of a row though)
  • some data types aren't yet supported (DateTime)
  • no grouping
  • no reording column placement
  • no widening or narrowing of column widths

Other Notes / Information

written a couple of years ago

Categories

Dependencies

Dependency list 7 items

Source repository

Projects using this package

No data available yet.