Skip to content
HyperUI for Flutter requires the Style package — this site itself ships no pub package.

Details Lists

Ported from HyperUI’s Details Lists — see Attribution.

Includes a dark: variant — toggle the site theme (top right) to preview it.

class DetailsList1Example extends StatelessWidget {
const DetailsList1Example({super.key});
@override
Widget build(BuildContext context) {
return Style(
'mx-auto max-w-3xl p-6',
child: Style(
'flow-root',
child: Style(
'-my-3 divide-y divide-gray-200 text-sm dark:divide-gray-700',
children: const [
Style(
'grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Title'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Mr'),
),
],
),
Style(
'grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Name'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('John Frusciante'),
),
],
),
Style(
'grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Occupation'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Guitarist'),
),
],
),
Style(
'grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Salary'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(r'$1,000,000+'),
),
],
),
Style(
'grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Bio'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(
'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Et facilis debitis '
'explicabo doloremque impedit nesciunt dolorem facere, dolor quasi veritatis '
'quia fugit aperiam aspernatur neque molestiae labore aliquam soluta architecto?',
),
),
],
),
],
),
),
);
}
}

Includes a dark: variant — toggle the site theme (top right) to preview it.

class DetailsList2Example extends StatelessWidget {
const DetailsList2Example({super.key});
@override
Widget build(BuildContext context) {
return Style(
'mx-auto max-w-3xl p-6',
child: Style(
'flow-root',
child: Style(
'-my-3 divide-y divide-gray-200 text-sm *:even:bg-gray-50 dark:divide-gray-700 dark:*:even:bg-gray-800',
children: const [
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Title'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Mr'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Name'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('John Frusciante'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Occupation'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Guitarist'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Salary'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(r'$1,000,000+'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Bio'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(
'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Et facilis debitis '
'explicabo doloremque impedit nesciunt dolorem facere, dolor quasi veritatis '
'quia fugit aperiam aspernatur neque molestiae labore aliquam soluta architecto?',
),
),
],
),
],
),
),
);
}
}

Includes a dark: variant — toggle the site theme (top right) to preview it.

class DetailsList3Example extends StatelessWidget {
const DetailsList3Example({super.key});
@override
Widget build(BuildContext context) {
return Style(
'mx-auto max-w-3xl p-6',
child: Style(
'flow-root',
child: Style(
'-my-3 divide-y divide-gray-200 rounded border border-gray-200 text-sm dark:divide-gray-700 dark:border-gray-800',
children: const [
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Title'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Mr'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Name'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('John Frusciante'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Occupation'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Guitarist'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Salary'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(r'$1,000,000+'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Bio'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(
'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Et facilis debitis '
'explicabo doloremque impedit nesciunt dolorem facere, dolor quasi veritatis '
'quia fugit aperiam aspernatur neque molestiae labore aliquam soluta architecto?',
),
),
],
),
],
),
),
);
}
}

Includes a dark: variant — toggle the site theme (top right) to preview it.

class DetailsList4Example extends StatelessWidget {
const DetailsList4Example({super.key});
@override
Widget build(BuildContext context) {
return Style(
'mx-auto max-w-3xl p-6',
child: Style(
'flow-root',
child: Style(
'-my-3 divide-y divide-gray-200 rounded border border-gray-200 text-sm *:even:bg-gray-50 dark:divide-gray-700 dark:border-gray-800 dark:*:even:bg-gray-800',
children: const [
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Title'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Mr'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Name'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('John Frusciante'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Occupation'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text('Guitarist'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Salary'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(r'$1,000,000+'),
),
],
),
Style(
'grid grid-cols-1 gap-1 p-3 sm:grid-cols-3 sm:gap-4',
children: [
Style(
'font-medium text-gray-900 dark:text-white',
child: Text('Bio'),
),
Style(
'text-gray-700 sm:col-span-2 dark:text-gray-200',
child: Text(
'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Et facilis debitis '
'explicabo doloremque impedit nesciunt dolorem facere, dolor quasi veritatis '
'quia fugit aperiam aspernatur neque molestiae labore aliquam soluta architecto?',
),
),
],
),
],
),
),
);
}
}