Creating Beautiful UI with Flutter
Tags: flutter, android, ui, ios
Published: 2024-01-05 18:47:43

Flutter offers a variety of packages that you can specifically use for enhancing your UI, and in this blog I'm going to share some of my most used packages for creating a beautiful UI:

**Loading Animation Packages**

1: [loading_animation_widget](https://pub.dev/packages/loading_animation_widget): Loading animation widget enables users with animated loaders that one can use instead of the traditional Circular Progress Bar.

![loading animation widget](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n82ztwushwmv88gzv11b.png)

2: [shimmer](https://pub.dev/packages/shimmer): For Android Users particularly , shimmer is one of the most popular loader in use. The shimmer package provides a minimalistic way to implement shimmer effect.

![shimmer](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b1fz701ah716ri0m8rue.png)

3: [loader_overlay](https://pub.dev/packages/loader_overlay): If you specifically wish to block the UI interactions while a loading is in effect, this package is just for you!

![loader overlay](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/muae2pfc0a1zs0a7kt2y.png)

**Drawer Widgets**

1: [Fluttergems list of Drawers](https://fluttergems.dev/drawer/): Contains an extensive list of drawer packages available in flutter.

**UI Widgets for body**

1: [getx](https://pub.dev/packages/get): get is mainly used for state management, however, it also provides basic widgets such as toaster, snackbar, dialogbox, alert dialog, bottom modal sheet etc. It eases the use of these widgets by wrapping them into a single widget that can mostly be adopted by just one or two lines of code.

2: [carousel_slider](https://pub.dev/packages/carousel_slider): If you wish to showcase a list of images in an animated transition, this package is just for you! Highly similar for those who've came from a web background.

![carousel](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z772n9xw6hw5pjk84sit.png)

3: [Font Awesome](https://pub.dev/packages/font_awesome_flutter) and [Google Fonts](https://pub.dev/packages/google_fonts): Tired of adding each font seperately and need a similar process to use custom fonts? Font Awesome and Google Fonts package provides you with a plethora of Fonts freely available that you can directly use with your Textstyle widget!

4: [fluent_ui](https://pub.dev/packages/fluent_ui): Since you can now also create Windows applications using Flutter, Fluent UI similar to Material UI and Cupertino UI for Android and iOS, provides Windows-specific UI widgets that can be used for creating Windows-lookalike UI, and it's not just limited for Windows!

![fluent ui](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5bf7wjuj77akr9mfsuck.png)

**Bottom Navigation Bar Packages**

1: [animated_bottom_navigation_bar](https://pub.dev/packages/animated_bottom_navigation_bar): This is one of the best Bottom Navigation Bar I've came across, provides animated navigation with a variety of customizations available.

![animated bottom navbar](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uw7k1n9qwifenuo1m3wh.png)

2: [persistent_bottom_nav_bar](https://pub.dev/packages/persistent_bottom_nav_bar): One of the most used Bottom Navigation Bar, provides minimalistic design with easy to use and customizations.

![persistent navbar](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v5e46rhg0uo86ol90tud.png)

It is noteworthy that while these packages are useful, the core usage of them depends on the use case, which varies depending upon the core functionality. 

Some other packages you should check out:
- [animate](https://pub.dev/packages/flutter_animate) for animation!

Find some Additional Resources below:
- [Flutter Gems Widget Library](https://fluttergems.dev/widget-library-ui-framework/): The Flutter Gems website also provides an extensive list of many available flutter packages.
- [Top 18 Flutter Widgets to Spice Up your app](https://medevel.com/flutter-17-ui/): This is also a very useful list of packages, haven't included them in my list as they've already been mentioned here. Do check out this guide as well!
- [Flutter UI Kit](https://github.com/iampawan/Flutter-UI-Kit): Contains pre-made templates for basic pages such as login, profile, dashboards and a lot more. 100% Open sourced and easy to use!