gauge_kit 0.3.4 copy "gauge_kit: ^0.3.4" to clipboard
gauge_kit: ^0.3.4 copied to clipboard

14 Flutter gauge widgets — radial, linear, arc & more. Material 3, Cupertino & Executive styles. Zero dependencies. MIT licensed.

example/lib/main.dart

import 'package:flutter/material.dart';

import 'screens/car_dashboard.dart';
import 'screens/flight_dashboard.dart';
import 'screens/weather_dashboard.dart';
import 'screens/audio_dashboard.dart';
import 'screens/server_dashboard.dart';
import 'screens/submarine_dashboard.dart';
import 'screens/data_science_dashboard.dart';
import 'screens/smart_home_screen.dart';

void main() {
  runApp(const GaugeKitExampleApp());
}

class GaugeKitExampleApp extends StatelessWidget {
  const GaugeKitExampleApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'gauge_kit Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: const Color(0xFF6750A4)),
        useMaterial3: true,
      ),
      home: const _HomeScreen(),
    );
  }
}

class _HomeScreen extends StatefulWidget {
  const _HomeScreen();

  @override
  State<_HomeScreen> createState() => _HomeScreenState();
}

class _HomeScreenState extends State<_HomeScreen> {
  int _tabIndex = 0;

  static const _tabs = [
    (icon: Icons.directions_car, label: 'Car'),
    (icon: Icons.flight, label: 'Flight'),
    (icon: Icons.wb_sunny, label: 'Weather'),
    (icon: Icons.equalizer, label: 'Audio'),
    (icon: Icons.dns, label: 'Server'),
    (icon: Icons.waves, label: 'Sub'),
    (icon: Icons.analytics, label: 'ML'),
    (icon: Icons.home_filled, label: 'v0.3'),
  ];

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: IndexedStack(
        index: _tabIndex,
        children: const [
          CarDashboardScreen(),
          FlightDashboardScreen(),
          WeatherDashboardScreen(),
          AudioDashboardScreen(),
          ServerDashboardScreen(),
          SubmarineDashboardScreen(),
          DataScienceDashboardScreen(),
          SmartHomeScreen(),
        ],
      ),
      bottomNavigationBar: NavigationBar(
        selectedIndex: _tabIndex,
        onDestinationSelected: (i) => setState(() => _tabIndex = i),
        destinations: [
          for (final tab in _tabs)
            NavigationDestination(
              icon: Icon(tab.icon),
              label: tab.label,
            ),
        ],
      ),
    );
  }
}
1
likes
160
points
71
downloads

Documentation

API reference

Publisher

verified publishersayedalialkamel.com

Weekly Downloads

14 Flutter gauge widgets — radial, linear, arc & more. Material 3, Cupertino & Executive styles. Zero dependencies. MIT licensed.

Repository (GitHub)
View/report issues

Topics

#gauge #dashboard #visualization #material3 #chart

License

MIT (license)

Dependencies

flutter

More

Packages that depend on gauge_kit