Customizable Tabs

A highly customizable Flutter package for creating beautiful and interactive tab navigation interfaces. This package provides a flexible way to implement tab-based navigation with customizable styles, animations, and layouts.

Tab Navigation Preview

Features

  • 🎨 Fully customizable tab styles and layouts
  • 🔄 Smooth tab switching animations
  • 📱 Responsive design that works on all screen sizes
  • 🎯 Easy-to-use API with minimal setup required
  • 🛠️ Extensive customization options for indicators, colors, and fonts
  • ⚡ Lightweight and performant

Getting Started

Add this to your package's pubspec.yaml file:

dependencies:
  customizable_tabs: ^0.0.1

Install the package by running:

flutter pub get

Usage

Here's a simple example of how to use Customizable Tabs:

import 'package:customizable_tabs/customizable_tabs.dart';

CustomizableTabs(
  tabs: [
    TabItem(icon: Icons.home, label: 'Home'),
    TabItem(icon: Icons.explore, label: 'Explore'),
    TabItem(icon: Icons.person, label: 'Profile'),
  ],
  selectedIndex: _selectedIndex,
  onTabSelected: (index) {
    setState(() {
      _selectedIndex = index;
    });
  },
)

Customization

The package offers various customization options:

CustomizableTabs(
  tabs: tabs,
  selectedIndex: selectedIndex,
  onTabSelected: onTabSelected,
  // Customize the appearance
  tabStyle: TabStyle(
    backgroundColor: Colors.white,
    selectedColor: Colors.purple,
    unselectedColor: Colors.grey,
    indicatorColor: Colors.purple,
    labelStyle: TextStyle(fontSize: 14),
  ),
  // Add animations
  animationDuration: Duration(milliseconds: 200),
  animationCurve: Curves.easeInOut,
)

Additional Information

  • Bug Reports and Feature Requests: Please file issues on the GitHub repository
  • Contributing: Contributions are welcome! Please read our contributing guidelines before submitting a PR
  • License: This project is licensed under the MIT License - see the LICENSE file for details

Support

If you find this package helpful, please give it a star on GitHub and consider supporting its development.