πŸ“¦ zeba_academy_stepper_form

A powerful, customizable step-by-step form builder for Flutter with built-in progress tracking, validation, local state persistence, and smooth transitions.


✨ Features

  • 🧩 Step-by-step form UI
  • πŸ“Š Built-in progress indicator
  • βœ… Per-step validation support
  • πŸ’Ύ Save & restore progress locally
  • 🎞️ Smooth custom transitions (fade, slide)
  • 🧱 Clean and reusable architecture
  • ⚑ Lightweight & production-ready

πŸš€ Getting Started

1. Add Dependency

dependencies:
  zeba_academy_stepper_form: ^1.0.0

2. Import Package

import 'package:zeba_academy_stepper_form/zeba_academy_stepper_form.dart';

🧠 Usage Example

ZebaStepperForm(
  steps: [
    ZebaStep(
      title: "Name",
      content: TextField(
        decoration: InputDecoration(labelText: "Enter Name"),
      ),
      validator: () {
        // Add your validation logic
        return true;
      },
    ),
    ZebaStep(
      title: "Email",
      content: TextField(
        decoration: InputDecoration(labelText: "Enter Email"),
      ),
      validator: () => true,
    ),
    ZebaStep(
      title: "Complete",
      content: Center(child: Text("πŸŽ‰ Done!")),
    ),
  ],
)

🧱 Core Components

πŸ”Ή ZebaStepperForm

Main widget to manage steps, navigation, transitions, and storage.

πŸ”Ή ZebaStep

Represents each step with:

  • title
  • content
  • validator

πŸ”Ή ZebaProgressIndicator

Displays current step progress.

πŸ”Ή StepStorageService

Handles saving and restoring step index using local storage.

πŸ”Ή ZebaTransitions

Provides animation effects:

  • Fade
  • Slide

βš™οΈ Configuration

Property Description Default
steps List of steps required
duration Transition duration 300ms
enableStorage Save progress locally true

πŸ§ͺ Testing

Run tests using:

flutter test

Make sure to test:

  • Step navigation
  • Validation behavior
  • UI rendering
  • Storage persistence

πŸ”₯ Roadmap

  • Form data persistence (not just step index)
  • Custom button builders
  • Step indicators (dots / icons)
  • Theme customization
  • Controller support (GetX / Provider)
  • Advanced animations

🀝 Contributing

Contributions are welcome!

  1. Fork the repo
  2. Create your feature branch
  3. Commit changes
  4. Open a pull request

πŸ‘¨β€πŸ’» About Me

✨ I’m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects. You can learn more about me and my work at sufyanism.com or connect with me on Linkedin


πŸŽ“ Your all-in-one learning hub!

πŸš€ Explore courses and resources in coding, tech, and development at zeba.academy and code.zeba.academy. Empower yourself with practical skills through curated tutorials, real-world projects, and hands-on experience. Level up your tech game today! πŸ’»βœ¨

Zeba Academy is a learning platform dedicated to coding, technology, and development.

➑ Visit our main site: https://zeba.academy ➑ Explore hands-on courses and resources at: https://code.zeba.academy ➑ Check out our YouTube for more tutorials: https://www.youtube.com/@zeba.academy ➑ Follow us on Instagram: https://www.instagram.com/zeba.academy/


Thank you for visiting! ❀️