← Open Source
package · v0.2.3

utopia_cms

An admin and back-office layer for Flutter - sortable tables, CRUD, and per-row actions over your backend.

dependencies:
  utopia_cms: ^0.2.3
flutter pub add utopia_cms
why it exists
Flutter has no native admin-panel option of its own - the fallbacks are Firebase console tabs or a hand-rolled dashboard. utopia_cms fills that gap: Every product eventually needs an admin panel, and hand-rolling one - a data table, a service, a loading-and-error triplet, a form per entity - is the same work over and over. utopia_cms is that work, once: a paged shell with sortable, filterable tables, CRUD flows, and per-row actions, driven by a delegate you point at your backend.
usage
CmsTablePage(
  title: "Products",
  delegate: CmsHasura.delegate(
    client: client,
    table: Tables.products,
    fields: TableFields.products,
    archivedFilter: const CmsFilterNotEquals("archived", true),
  ),
  entries: [
    CmsTextEntry(key: "name", modifier: const CmsEntryModifier(sortable: true)),
    CmsTextEntry(key: "description", flex: 4),
  ],
);
talk to us

Want this in your build?

The team behind utopia_cms ships production Flutter on the same stack. Tell us what you are building.