digit_flow_builder 0.0.1 copy "digit_flow_builder: ^0.0.1" to clipboard
digit_flow_builder: ^0.0.1 copied to clipboard

A JSON-driven dynamic UI rendering framework that builds complete screens and workflows from configuration. Flow configs are registered in `FlowRegistry` by the host application, and the framework ren [...]

Use this package as a library

Depend on it

Run this command:

With Flutter:

 $ flutter pub add digit_flow_builder

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

dependencies:
  digit_flow_builder: ^0.0.1

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

Import it

Now in your Dart code, you can use:

import 'package:digit_flow_builder/action_handler/action_config.dart';
import 'package:digit_flow_builder/action_handler/action_executor_registry.dart';
import 'package:digit_flow_builder/action_handler/action_handler.dart';
import 'package:digit_flow_builder/action_handler/executors/action_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/back_navigation_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/clear_state_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/close_popup_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/crud_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/navigation_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/open_scanner_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/refresh_search_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/reverse_transformer_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/search_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/toast_executor.dart';
import 'package:digit_flow_builder/action_handler/executors/transformer_executor.dart';
import 'package:digit_flow_builder/blocs/app_localization.dart';
import 'package:digit_flow_builder/blocs/flow_crud_bloc.dart';
import 'package:digit_flow_builder/blocs/form_submission_registry.dart';
import 'package:digit_flow_builder/blocs/localization_delegates.dart';
import 'package:digit_flow_builder/blocs/search_state_manager.dart';
import 'package:digit_flow_builder/blocs/state_wrapper_builder.dart';
import 'package:digit_flow_builder/blocs/wrapper/computed_evaluator.dart';
import 'package:digit_flow_builder/blocs/wrapper/computed_field_processor.dart';
import 'package:digit_flow_builder/blocs/wrapper/computed_list_evaluator.dart';
import 'package:digit_flow_builder/blocs/wrapper/computed_list_processor.dart';
import 'package:digit_flow_builder/blocs/wrapper/condition_evaluator.dart';
import 'package:digit_flow_builder/blocs/wrapper/entity_field_accessor.dart';
import 'package:digit_flow_builder/blocs/wrapper/entity_filter.dart';
import 'package:digit_flow_builder/blocs/wrapper/entity_grouper.dart';
import 'package:digit_flow_builder/blocs/wrapper/field_evaluator.dart';
import 'package:digit_flow_builder/blocs/wrapper/field_transformations.dart';
import 'package:digit_flow_builder/blocs/wrapper/value_resolver.dart';
import 'package:digit_flow_builder/blocs/wrapper/wrapper_builder.dart';
import 'package:digit_flow_builder/custom_component_registry.dart';
import 'package:digit_flow_builder/data/digit_crud_service.dart';
import 'package:digit_flow_builder/data/digit_data_converter.dart';
import 'package:digit_flow_builder/data/transformer_config.dart';
import 'package:digit_flow_builder/flow_builder.dart';
import 'package:digit_flow_builder/flow_builder_home_page.dart';
import 'package:digit_flow_builder/layout_renderer.dart';
import 'package:digit_flow_builder/navigation_service/navigation_service.dart';
import 'package:digit_flow_builder/router/flow_builder_routes.dart';
import 'package:digit_flow_builder/router/flow_builder_routes.gm.dart';
import 'package:digit_flow_builder/screen_builder.dart';
import 'package:digit_flow_builder/utils/conditional_evaluator.dart';
import 'package:digit_flow_builder/utils/context_utility.dart';
import 'package:digit_flow_builder/utils/flow_widget_state.dart';
import 'package:digit_flow_builder/utils/function_registry.dart';
import 'package:digit_flow_builder/utils/interpolation.dart';
import 'package:digit_flow_builder/utils/utils.dart';
import 'package:digit_flow_builder/utils/widget_parsers.dart';
import 'package:digit_flow_builder/widget_registry.dart';
import 'package:digit_flow_builder/widgets/flow_widget_interface.dart';
import 'package:digit_flow_builder/widgets/implementations/action_popup_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/back_link.dart';
import 'package:digit_flow_builder/widgets/implementations/button_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/card_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/column_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/dropdown_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/expandable_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/filter_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/icon_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/info_card_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/label_pair_list_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/list_view_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/menu_card_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/panel_card_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/proximity_search_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/qr_scanner_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/qr_view_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/radio.dart';
import 'package:digit_flow_builder/widgets/implementations/row_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/search_bar_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/selection_card.dart';
import 'package:digit_flow_builder/widgets/implementations/switch_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/table_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/tag_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/text_input_widget.dart';
import 'package:digit_flow_builder/widgets/implementations/text_widget.dart';
import 'package:digit_flow_builder/widgets/localization_context.dart';
import 'package:digit_flow_builder/widgets/localized.dart';
import 'package:digit_flow_builder/widgets/resolved_flow_widget.dart';
import 'package:digit_flow_builder/widgets/widget_registration.dart';
0
likes
30
points
119
downloads

Publisher

unverified uploader

Weekly Downloads

A JSON-driven dynamic UI rendering framework that builds complete screens and workflows from configuration. Flow configs are registered in `FlowRegistry` by the host application, and the framework renders forms or templates, handles user actions (search, create, update, delete, navigate), and manages state — all without writing screen-level code.

License

MIT (license)

Dependencies

auto_route, collection, digit_crud_bloc, digit_data_converter, digit_data_model, digit_forms_engine, digit_formula_parser, digit_scanner, digit_ui_components, flutter, flutter_bloc, intl, qr_flutter, screen_protector

More

Packages that depend on digit_flow_builder