Widgetbook x Hacktoberfest 2023

Majid Hajian
Widgetbook

--

October 2023 was a landmark month for Widgetbook, thanks to the collective efforts during Hacktoberfest. This year, we witnessed an outpouring of contributions, leading to groundbreaking features and enhancements in Widgetbook’s package and CLI. Let’s delve into these exciting developments, highlighting specific changes and the community’s incredible contributions.

Hacktoberfest in Statistics

The Hacktoberfest 2023 campaign at Widgetbook was not just an event but a vibrant showcase of collective effort and technical prowess. Let’s delve into the heart of this success through some impressive statistics and acknowledge the stars behind these achievements.

Impressive Contributions:

  • Total Pull Requests (PRs): We received a remarkable count of 17 PRs.
  • New Contributors: These PRs were contributed by 10 enthusiastic developers.
  • Diverse Contributions: The range of contributions spanned from UI enhancements to CLI optimizations, reflecting the diverse skill set of our community.

For a detailed look at all the PRs, visit Widgetbook’s Hacktoberfest Contributions.

Shoutout to Our Outstanding Contributors

Each contributor brought unique ideas and expertise, significantly enhancing Widgetbook’s capabilities.

  • @Mastersam07: Showcased exceptional professionalism with 3 addons, 2 knobs, and crucial mobile support. His PRs were a benchmark in code quality and documentation.
  • @geisterfurz007: Made a rare and valuable contribution affecting widgetbook_generator, a less common area during Hacktoberfest.
  • @francescovallone: Added the complex and multifaceted color knob. His PR, rich in review comments, exhibited his patience and openness to iterative changes.
  • @daohoangson: Displayed remarkable patience with a PR that, although not merged, was accepted for its value during the discussion phase.
  • @logickoder: Successfully tackled the daunting task of adding a knob for DateTime, a notoriously complex data type.
  • @07Abhinavkapoor: Played a pivotal role in introducing the light theme, illuminating Widgetbook’s interface.
  • @boredcity: Enhanced the user experience by adding a new q query parameter for the navigation bar’s search functionality.

Each contributor has added value to Widgetbook and inspired the community with dedication and skill. We extend our heartfelt gratitude to them and to every individual who participated, making Hacktoberfest 2023 a memorable and productive event for Widgetbook.

As promised, all our contributors will soon receive their swag box, including the Widgetbook T-shirt.

You can read more in detail on our GitHub issues.

Widgetbook 3.4: What’s New

The release of Widgetbook 3.4 brings a host of exciting new features and improvements, enhancing both the developer’s experience and the end-user interface. Here’s what’s new:

New Knobs

  • DateTime Knob: Tackling one of the most complex data types, the DateTime knob offers intuitive date and time manipulation within the Widgetbook interface.
context.knobs.dateTimeOrNull(
initialValue: initialDate,
label: 'Select Date Time',
start: DateTime(initialDate.year - 1),
end: DateTime(initialDate.year + 1),
)
  • Duration Knob: This knob allows for the adjustment of duration values, adding another layer of interactivity.
context.knobs.duration(
label: 'Increment duration',
initialValue: const Duration(seconds: 5),
)
  • Int Knob: A straightforward way to adjust integer values directly from the UI.
context.knobs.int.input(
label: 'Int - Input',
initialValue: 1,
)

context.knobs.int.slider(
label: 'Int - Slider',
initialValue: 2,
)
  • Enhanced Color Knob: The color knob has been revamped to support various color spaces and opacity levels, including a nullable version for more versatility.
context.knobs.color(
label: 'Color',
initialValue: Colors.blue,
)

Explore Knobs in Detail

Interface Improvements

  • Light Theme: The introduction of a light theme option caters to different aesthetic preferences
  • WidgetbookLeafComponent: Simplifying components’ organization with a single use case enhances the navigation experience.
  • Mobile support The mobile support has landed on the Widgetbook UI.

New Addons

Widgetbook 3.4 introduces several new addons, each designed to augment the functionality of Widgetbook and enrich the developer’s toolkit. These addons offer diverse capabilities, from improving accessibility to providing detailed insights into widget properties. Here’s an overview of these innovative additions:

1. Zoom Addon: The Zoom Addon provides a seamless way to adjust the zoom level of widgets within the Workbench. This feature is handy for fine-tuning the appearance and layout of widgets. Learn More About the Zoom Addon

ZoomAddon(initialZoom: 1.0)

2. Grid Addon: With the Grid Addon, developers can overlay a pixel grid on the previewed use case. This is invaluable for ensuring alignment and consistency in design. Explore the Grid Addon

GridAddon()

3. Accessibility Addon: This addon is a powerful tool for detecting and resolving accessibility issues. It leverages the accessibility_tools package to ensure that widgets are accessible to all users. More on Accessibility Addon

AccessibilityAddon()

4. Inspector Addon: The Inspector Addon is an essential tool for developers, offering the ability to inspect various widget properties, such as colors, sizes, and padding. This feature enhances the debugging and design process within the Widgetbook’s Workbench. Discover the Inspector Addon

These addons make Widgetbook more versatile and user-friendly, offering developers enhanced capabilities to build and test their widgets more effectively.

Enhancements in Generator Version 3.3.0

The Widgetbook Generator also saw significant enhancements in version 3.3.0, making it more powerful and user-friendly. Key updates include:

  • Custom Path for @UseCase: This feature allows developers to specify a custom path for their use cases, improving organization and readability.
@widgetbook.UseCase(
name: 'Example',
type: YourWidget,
path: '[Category]/folder',
)

Upgrade your Widgetbook today and look for new features on our demo project.

dependencies:
widgetbook: ^3.4.0
widgetbook_annotation: ^3.1.0

dev_dependencies:
widgetbook_generator: ^3.3.0

Conclusion

October was a month of growth, learning, and community spirit for Widgetbook. The contributions we received enriched our open-source package and exemplified the spirit of collaboration and innovation that drives the tech world forward.

As we release version 3.4, we extend our heartfelt thanks to every contributor who made this possible. Here’s to many more successful Hacktoberfests!

--

--

Majid Hajian
Widgetbook

Author of FlutterEngineering.io, DevRel Invertase.io, Passionate software engineer, Flutter & Dart Google Developer Expert. Helping devs satisfies me.