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.