Folder Structure

Do

lib
--core
----services
------api_service.dart
----shared_widgets
------custom_textfield_widget.dart
----utils
------utils.dart
--features
----authentication
------screens
--------login_screen.dart
--------register_screen.dart
----home
------screens
--------home_screen.dart
------widgets
--------product_widget.dart
--main.dart


Don't

lib
--api_service.dart
--custom_textfield_widget.dart
--home_screen.dart
--login_screen.dart
--main.dart
--product_widget.dart
--register_screen.dart
--utils.dart


Conclusion: Making it easier to locate and organize files.

Note: If you use state management you can add it in every feature. Example: features/home/bloc.