dashboard_kit 0.1.0
dashboard_kit: ^0.1.0 copied to clipboard
A themeable dashboard shell for Flutter — welcome header, quick actions, and bottom nav out of the box, fully customizable via DashboardTheme.
import 'package:flutter/material.dart';
import 'package:dashboard_kit/dashboard_kit.dart';
void main() => runApp(const ExampleApp());
class ExampleApp extends StatelessWidget {
const ExampleApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'dashboard_kit example',
debugShowCheckedModeBanner: false,
home: DashboardScaffold(
theme: const DashboardTheme(
primaryColor: Color(0xFF10B981),
darkAccent: Color(0xFF047857),
),
navItems: const [
NavItem(icon: Icons.home_outlined, activeicon: Icons.home, label: 'Home'),
NavItem(icon: Icons.chat_bubble_outline, activeicon: Icons.chat_bubble, label: 'Chat'),
NavItem(icon: Icons.person_outline, activeicon: Icons.person, label: 'Profile'),
NavItem(icon: Icons.history, label: 'History'),
],
screens: [
DashboardHome(
userName: 'Abdullah',
quickActions: [
QuickActionItem(
icon: Icons.receipt_long_outlined,
label: 'Split Bill',
onTap: () => debugPrint('Split Bill tapped'),
),
QuickActionItem(
icon: Icons.send_outlined,
label: 'Send Money',
onTap: () => debugPrint('Send Money tapped'),
),
QuickActionItem(
icon: Icons.add_circle_outline,
label: 'Enter Expenses',
onTap: () => debugPrint('Enter Expenses tapped'),
),
],
),
const _PlaceholderScreen(label: 'Chat'),
const _PlaceholderScreen(label: 'Profile'),
const _PlaceholderScreen(label: 'History'),
],
),
);
}
}
class _PlaceholderScreen extends StatelessWidget {
const _PlaceholderScreen({required this.label});
final String label;
@override
Widget build(BuildContext context) {
return Center(child: Text('$label screen goes here'));
}
}