What is Leitmotif?
A collection of widgets and screens for Flutter implementing the Leitmotif Design Language. It complements the default Material Widgets shipped with Flutter. Whose Widgets include custom implementation of Snackbars
, AppBars
and a settings panel. Utility Screens (e.g. required to verify the user's age and to show the application's licenses) are also included.
'Leitmotif' is derived from the German noun 'Leitmotiv' which describes a dominant and recurring theme in music and literature.
Leitmotif is based on the LitUIKit project, which has been discontinued.
Visit our website for more details.
Created and maintained by LitLifeSoftware.
Getting Started
To use Leitmotif in your Flutter app make sure to import it by including the code line import 'package:leitmotif/leitmotif.dart';
in the header part of your .dart
file.
For help getting started with Flutter, view Flutter's online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Screenshots
Example HomeScreen | LitSettingsPanel |
---|---|
LitIconSnackbar | LitOnboardingScreen |
---|---|
Icons
Leitmotif does utilize its own icons (LitIcons
). They are stored inside a ttf
file and are implemented as Dart IconData
objects.
Example app
To get a better understanding for implementing Leitmotif's widgets we recommend
to take a look at the example app provided in the example
folder. Feel free to
experiment with the UI.
Previous Releases
Due to leitmotif
being derived from the lit_ui_kit
project, releases prior to v.1.4.0
are only available on lit_ui_kit
. Get a list of all releases of lit_ui_kit
on pub.dev or on its repository.
Dependencies
Leitmotif uses the following Dart dependencies in order to implement certain features and functionality:
- package_info - License (Used to detect the platform and version details)
- intl - License (Used to implement localizations)
- dartdoc - License (Used to create the documentation)
Credits
Leitmotif is made possible thanks to the Flutter Project. It utilizes the serif font Merriweather (designed by Sorkin Type), the sans serif font Montserrat (designed by Julieta Ulanovsky, Sol Matas, Juan Pablo del Peral, Jacques Le Bailly) and the monospace font VT323 (designed by Peter Hull).
License
All the fonts in the src/fonts
folder are licensed under the Open Font License.
All the icons in the src/fonts/Icons
folder are distributed under the CC-BY license.
Everything else in this repository including the source code is distributed under the
BSD 3-Clause license as specified in the LICENSE
file.
Libraries
- app_bars
- Flutter widgets implementing custom styled app bars.
- art
- Flutter widgets implementing art such as icons or painter.
- badges
- Flutter widgets implementing badges.
- Flutter widgets implementing a bottom navigation.
- Flutter widgets implementing custom styled buttons.
- calendar
- Flutter widgets implementing the custom calendar view.
- collapsible_card
- Flutter widgets implementing the custom styled collapsible card.
- containers
- Flutter widgets implementing custom containers used to wrap child widgets, or to fill empty space.
- controllers
- Flutter widgets implementing controllers required to perform certain UI-related operations on 'leitmotif' widgets.
- dialogs
- Flutter widgets implementing custom styled dialogs.
- icons
- Flutter widgets implementing icons.
- input
- Flutter widgets allowing to receive user-submitted content.
- leitmotif
- A collection of Flutter widgets.
- loading_indicators
- Flutter widgets implementing loading indicators.
- models
- Flutter widgets declaring data models to combine related values.
- pageview
- Flutter widgets implementing custom page views.
- scaffold
- Flutter widgets implementing the custom styled scaffold.
- screens
- Flutter widgets implementing screens to either persent art, display general information or to get allow basic user inputs such as age and user data.
- scrollbars
- Flutter widgets implementing scrollbars.
- settings_panel
- Flutter widgets implementing the custom styled settings panel.
- slider
- Flutter widgets implementing the custom styled slider.
- snackbars
- Flutter widgets implementing snackbars.
- styles
- Flutter widgets implementing styles such as color and texts styles.
- text
- Flutter widgets implementing text.
- titles
- Flutter widgets implementing titles.
- utility
- Flutter widgets implementing utilies such as converter and class extenstions.