All Projects → unoplatform → Uno.Themes

unoplatform / Uno.Themes

Licence: Apache-2.0 License
This library is designed to help you use the material design system with the Uno Platform

Programming Languages

C#
18002 projects
powershell
5483 projects

Projects that are alternatives of or similar to Uno.Themes

Uno
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.
Stars: ✭ 6,029 (+5283.04%)
Mutual labels:  xaml, xamarin, uwp, webassembly, uno-platform, winui
Microsoft Ui Xaml
Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications
Stars: ✭ 4,428 (+3853.57%)
Mutual labels:  xaml, uwp, winui
Ammyui
Ammy language repository
Stars: ✭ 356 (+217.86%)
Mutual labels:  xaml, xamarin, uwp
Adaptivecards
A new way for developers to exchange card content in a common and consistent way.
Stars: ✭ 950 (+748.21%)
Mutual labels:  xaml, xamarin, uwp
react-native-xaml
A React Native Windows library to use XAML / WinUI controls
Stars: ✭ 55 (-50.89%)
Mutual labels:  xaml, uwp, winui
Arcgis Runtime Samples Dotnet
Sample code for ArcGIS Runtime SDK for .NET – UWP, WPF, Xamarin.Android, Xamarin.iOS, and Xamarin.Forms
Stars: ✭ 274 (+144.64%)
Mutual labels:  xaml, xamarin, uwp
Reactiveproperty
ReactiveProperty provides MVVM and asynchronous support features under Reactive Extensions. Target framework is .NET Standard 2.0.
Stars: ✭ 603 (+438.39%)
Mutual labels:  xaml, xamarin, uwp
Uno.playground
Source code for the Uno Gallery apps and Uno Playground (made in Wasm)
Stars: ✭ 184 (+64.29%)
Mutual labels:  xamarin, uwp, webassembly
Xamarin Forms Gtk Movies Sample
The Movie DB Xamarin.Forms Sample
Stars: ✭ 83 (-25.89%)
Mutual labels:  xaml, xamarin, uwp
Arcgis Toolkit Dotnet
Toolkit for ArcGIS Runtime SDK for .NET
Stars: ✭ 125 (+11.61%)
Mutual labels:  xaml, xamarin, uwp
Mvvmvalidation
Lightweight library that helps reduce boilerplate when implementing validation in XAML MVVM applications
Stars: ✭ 141 (+25.89%)
Mutual labels:  xaml, xamarin, uwp
WordpadUWP
A UWP version of... WordPad!
Stars: ✭ 54 (-51.79%)
Mutual labels:  xaml, uwp, winui
DevToys
A Swiss Army knife for developers.
Stars: ✭ 4,986 (+4351.79%)
Mutual labels:  xaml, uwp, winui
mvvmgen
MvvmGen is a lightweight MVVM library for XAML applications. It generates your ViewModels on-the-fly for you via a Roslyn-based C# Source Generator.
Stars: ✭ 179 (+59.82%)
Mutual labels:  xaml, uno-platform, winui
arcgis-runtime-demos-dotnet
Demo applications provided by the ArcGIS Runtime SDK for .NET Team
Stars: ✭ 51 (-54.46%)
Mutual labels:  xaml, xamarin, uwp
uno.toolkit.ui
A set of custom controls for the WinUI and the Uno Platform not offered out of the box by WinUI, such as Card, TabBar, NavigationBar, etc.
Stars: ✭ 45 (-59.82%)
Mutual labels:  xamarin, uwp, uno-platform
Csla
A home for your business logic in any .NET application.
Stars: ✭ 865 (+672.32%)
Mutual labels:  xamarin, uwp, webassembly
Uno.ch9
Ch9 - Uno Reference Implementation project
Stars: ✭ 45 (-59.82%)
Mutual labels:  xamarin, uwp, webassembly
Files
A modern file manager that pushes the boundaries of the platform.
Stars: ✭ 15,198 (+13469.64%)
Mutual labels:  xaml, uwp, winui
Xamarin Demos
This repository contains the Syncfusion Xamarin UI control’s samples and the guide to use them.
Stars: ✭ 218 (+94.64%)
Mutual labels:  xaml, xamarin, uwp

Uno Material

This library is designed to help you use the material design system. It includes :

  • Color system for both Light and Dark theme
  • Styles for existing WinUI controls like Buttons, TextBox, etc.

Quickly visualize all the available controls through this zeplin link

Platform support:

  • WinUI / UWP
  • iOS
  • MacOS
  • Android
  • WebAssembly
  • Linux (Skia.Gtk)

Uno Material

Uno Material Design Guideline is a resource for designers and software developers that combines Material and Uno design guidance in single document. It is an easy way to kickstart design and implementation of cross-platform experiences with unified Material design system look and feel, using Sketch and Uno Platform.

Download the Uno Platform Design Guidelines sketch file to get started.

It includes:

  • Uno-Material components
  • Uno type resource names
  • Uno asset naming and export guidance

License

Getting Started

  1. Install the nuget package Uno.Material.
  2. Unless you want our default color palette (inspired by our Uno logo), you'll want to override the following color resources in you application. We suggest creating a ColorPaletteOverride.xaml ResourceDictionary. For more information on the color system, consult this page for all the official documentation and tools to help you create your own palette. Here is what ColorPaletteOverride.xaml would contain if you want both light and dark theme.
<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

	<!--

	For more information on the color system, consult this page
	https://material.io/design/color/the-color-system.html#color-theme-creation

	-->
	<ResourceDictionary.ThemeDictionaries>
		<!-- Light Theme -->
		<ResourceDictionary x:Key="Light">
			<Color x:Key="MaterialPrimaryColor">#5B4CF5</Color>
			<Color x:Key="MaterialPrimaryVariantDarkColor">#353FE5</Color>
			<Color x:Key="MaterialPrimaryVariantLightColor">#B6A8FB</Color>
			<Color x:Key="MaterialSecondaryColor">#67E5AD</Color>
			<Color x:Key="MaterialSecondaryVariantDarkColor">#2BB27E</Color>
			<Color x:Key="MaterialSecondaryVariantLightColor">#9CFFDF</Color>
			<Color x:Key="MaterialBackgroundColor">#FFFFFF</Color>
			<Color x:Key="MaterialSurfaceColor">#FFFFFF</Color>
			<Color x:Key="MaterialErrorColor">#F85977</Color>
			<Color x:Key="MaterialOnPrimaryColor">#FFFFFF</Color>
			<Color x:Key="MaterialOnSecondaryColor">#000000</Color>
			<Color x:Key="MaterialOnBackgroundColor">#000000</Color>
			<Color x:Key="MaterialOnSurfaceColor">#000000</Color>
			<Color x:Key="MaterialOnErrorColor">#000000</Color>
			<Color x:Key="MaterialOverlayColor">#51000000</Color>
		</ResourceDictionary>

		<!-- Dark Theme -->
		<ResourceDictionary x:Key="Dark">
			<Color x:Key="MaterialPrimaryColor">#B6A8FB</Color>
			<Color x:Key="MaterialPrimaryVariantDarkColor">#353FE5</Color>
			<Color x:Key="MaterialPrimaryVariantLightColor">#D4CBFC</Color>
			<Color x:Key="MaterialSecondaryColor">#67E5AD</Color>
			<Color x:Key="MaterialSecondaryVariantDarkColor">#2BB27E</Color>
			<Color x:Key="MaterialSecondaryVariantLightColor">#9CFFDF</Color>
			<Color x:Key="MaterialBackgroundColor">#121212</Color>
			<Color x:Key="MaterialSurfaceColor">#121212</Color>
			<Color x:Key="MaterialErrorColor">#CF6679</Color>
			<Color x:Key="MaterialOnPrimaryColor">#000000</Color>
			<Color x:Key="MaterialOnSecondaryColor">#000000</Color>
			<Color x:Key="MaterialOnBackgroundColor">#FFFFFF</Color>
			<Color x:Key="MaterialOnSurfaceColor">#DEFFFFFF</Color>
			<Color x:Key="MaterialOnErrorColor">#000000</Color>
			<Color x:Key="MaterialOverlayColor">#51FFFFFF</Color>
		</ResourceDictionary>
	</ResourceDictionary.ThemeDictionaries>
</ResourceDictionary>
  1. Initialize the material resources. The order in which the different resources are loaded is important. Add this to App.xaml
<MaterialColors xmlns="using:Uno.Material"
				OverrideSource="ms-appx:///ColorPaletteOverride.xaml" />
<MaterialResources xmlns="using:Uno.Material" />
  1. (Optional) The material ProgressBar is built on top for the WinUI ProgressBar so make sure you include the appropriate resources in your App.xaml
	<Application.Resources>
		<ResourceDictionary>
			<ResourceDictionary.MergedDictionaries>
				<!-- Load WinUI resources -->
				<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls"/>

				<MaterialColors xmlns="using:Uno.Material"
								OverrideSource="ms-appx:///ColorPaletteOverride.xaml" />
				<MaterialResources xmlns="using:Uno.Material" />
				<!-- Application's custom styles -->
				<!-- other ResourceDictionaries -->
			</ResourceDictionary.MergedDictionaries>
		</ResourceDictionary>
	</Application.Resources>
  1. Start using the styles in your pages!
  • To use styles, just find the name of the style from our documentation or sample app and use it like this
<Button Content="CONTAINED"
	Style="{StaticResource MaterialContainedButtonStyle}"/>
  1. In order to display the appropriate font with the material styles on Webassembly, make sure that the Roboto font is defined on font.css located at [YourProject].Wasm/WasmCSS. This make sure that the font is loaded correctly Related Issue. It should look like this:
@font-face {
  font-family: "Symbols";
  /* winjs-symbols.woff2: https://github.com/Microsoft/fonts/tree/master/Symbols */
  src: url(data:application/x-font-woff;charset=utf-8;base64,[...]);
}

@font-face {
  font-family: "Roboto";
  src: url(data:application/x-font-woff;charset=utf-8;base64,[...]);
}

body::after {
	font-family: 'Roboto';
	background: transparent;
	content: "";
	opacity: 0;
	pointer-events: none;
	position: absolute;
}
  1. (Optional) Set material styles as the default for your whole application.

    <MaterialResources xmlns="using:Uno.Material" WithImplicitStyles="True" />

    Alternatively, if you wish to only have the default styles for certain controls, simply add the implicit styles to your App.xaml:

    <Application.Resources>
    	<ResourceDictionary>
    		<ResourceDictionary.MergedDictionaries>
    			<MaterialColors xmlns="using:Uno.Material" />
    			<MaterialResources xmlns="using:Uno.Material" />
    
    			<!-- implicit styles -->
    			<ResourceDictionary>
    				<Style TargetType="Button" BasedOn="{StaticResource MaterialContainedButtonStyle}"/>
    				<Style TargetType="TextBox" BasedOn="{StaticResource MaterialFilledTextBoxStyle}"/>
    			</ResourceDictionary>
    		</ResourceDictionary.MergedDictionaries>
    	</ResourceDictionary>
    </Application.Resources>

    Learn more about implicit styles from the Microsoft documentation here

  2. (Optional) Per-control customization. Just like WinUI, we documented a set of control-specific resources you can override to further customize our controls. For example, if you would like change the CornerRadius of all the Buttons using our material styles, you could simply override the ButtonBorderRadius value in your resources (in App.xaml would be the simplest way to put the following code)

<CornerRadius x:Key="ButtonBorderRadius">4</CornerRadius>
  1. (Optional) If you are using our ToggleSwitches to get proper Material styling in Android there is some extra code to be added to the Android Project Head. (Click the component name to see how to set them up)

  2. (Optional) If you are using our DatePickers, and TimePickers to get proper Material styling in Android there is some extra code to be added to the Android Project Head. (Click the component name to see how to set them up)

Features

Quickly visualize all the available controls through this zeplin link

Styles for basic controls

Controls StyleNames
Button MaterialContainedButtonStyle
MaterialOutlinedButtonStyle
MaterialTextButtonStyle
MaterialButtonIconStyle
MaterialContainedSecondaryButtonStyle
MaterialOutlinedSecondaryButtonStyle
MaterialTextSecondaryButtonStyle
MaterialButtonIconStyle
Button (FAB)
Floating Action Button
MaterialFabStyle
MaterialSmallFabStyle
MaterialSecondaryFabStyle
MaterialPrimaryInvertedFabStyle
MaterialSecondaryInvertedFabStyle
CalendarDatePicker MaterialCalendarDatePickerStyle
CalendarView MaterialCalendarViewStyle
CheckBox MaterialCheckBoxStyle
MaterialSecondaryCheckBoxStyle
ComboBox MaterialComboBoxStyle
MaterialComboBoxItemStyle
CommandBar MaterialCommandBarStyle
MaterialAppBarButton
DatePicker MaterialDatePickerStyle
Flyout MaterialFlyoutPresenterStyle
MaterialContentFlyoutPresenterStyle
MenuFlyout MaterialMenuFMaterialMUXNoCompactMenuNavigationViewStylelyoutPresenterStyle
MaterialMenuFlyoutItemStyle
MaterialToggleMenuFlyoutItemStyle
MaterialMenuFlyoutSubItemStyle
MaterialMenuFlyoutSeparatorStyle
HyperlinkButton MaterialHyperlinkButtonStyle
MaterialSecondaryHyperlinkButtonStyle
muxc:InfoBar MaterialInfoBarStyle
ListView MaterialListViewStyle
MaterialListViewDetailsStyle
MaterialListViewItemStyle
NavigationView MaterialWUXNavigationViewStyle
MaterialWUXNoCompactMenuNavigationViewStyle
MaterialWUXNavigationViewItemStyle
muxc:NavigationView MaterialNavigationViewStyle
MaterialNavigationViewItemStyle
PasswordBox MaterialFilledPasswordBoxStyle
MaterialOutlinedPasswordBoxStyle
muxc:ProgressBar MaterialProgressBarStyle
MaterialSecondaryProgressBarStyle
muxc:ProgressRing MaterialProgressRingStyle
MaterialSecondaryProgressRingStyle
RadioButton MaterialRadioButtonStyle
MaterialSecondaryRadioButtonStyle
muxc:RatingControl MaterialRatingControlStyle
MaterialSecondaryRatingControlStyle
muxc:Slider MaterialSliderStyle
MaterialSecondarySliderStyle
TextBlock MaterialHeadline1
MaterialHeadline2
MaterialHeadline3
MaterialHeadline4
MaterialHeadline5
MaterialHeadline6
MaterialSubtitle1
MaterialSubtitle2
MaterialBody1
MaterialBody2
MaterialButtonText
MaterialCaption
MaterialOverline
TextBox MaterialFilledTextBoxStyle
MaterialOutlinedTextBoxStyle
ToggleButton MaterialTextToggleButtonStyle
MaterialToggleButtonIconStyle
ToggleSwitch MaterialToggleSwitchStyle
MaterialSecondaryToggleSwitchStyle

Controls Setup (Specialized)

ToggleSwitch

If you are using our ToggleSwitches to get the proper native colors on android their is some modification needed. The reasoning for this is to apply the native android shadowing on the off value of the ToggleSwitch, and proper focus shadow colors when ToggleSwitches are clicked

  1. From your Android project head go to YourProject.Droid/Resources/values/Styles.xml Inside your AppTheme add two item's "colorControlActivated" (the on color for your ToggleSwitches thumb) and "colorSwitchThumbNormal" (the off color for your ToggleSwitches thumb) you may add your colors here directly, for example #ffffff, or by files (see our example code below)
<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<style name="AppTheme" parent="Theme.AppCompat.Light">

		<!-- Color style for toggle switch -->
		<item name="colorControlActivated">@color/MaterialPrimaryColor</item>
		<item name="colorSwitchThumbNormal">@color/MaterialSurfaceVariantColor</item>
	</style>
</resources>
  1. (Optional) If your application uses Light/Dark color palettes. 2.1 Inside the Styles.xml file change the AppTheme's parent to Theme.Compat.DayNight
<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<style name="AppTheme" parent="Theme.AppCompat.DayNight">

		<!-- Color style for toggle switch -->
		<item name="colorControlActivated">@color/MaterialPrimaryColor</item>
		<item name="colorSwitchThumbNormal">@color/MaterialSurfaceVariantColor</item>
	</style>
</resources>

2.2 From your Android project head go to YourProject.Droid/Resources/values create a file called "colors.xml", inside include your "Light" theme colors.

<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<color name="MaterialPrimaryColor">#5B4CF5</color>
	<!-- SurfaceColor -->
	<color name="MaterialSurfaceVariantColor">#FFFFFF</color>
</resources>

2.3 From your Android project head go to YourProject.Droid/Resources create a folder called "values-night", inside the folder add a file called "colors.xml", and inside the file include your "Dark" theme colors.

<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<color name="MaterialPrimaryColor">#B6A8FB</color>
	<!-- A variant of OnSurfaceMediumColor without alpha opacity (can't use alphas with android colors)  -->
	 <color name="MaterialSurfaceVariantColor">#808080</color>
</resources>

2.3 (Optional) If you have changed the material color palette for your application (2.) then there are two more colors that must be overridden for android native ToggleSwitch disabled colors to be properly applied. Colors are named PrimaryVariantDisabledThumbColor and SurfaceVariantLightColor, they can be overridden in your colors.xaml file. PrimaryVariantDisabledThumbColor is a non-transparent version of PrimaryDisabled color ("Light") in "Light" palette, and a non-transparent version of PrimaryMedium color ("Dark") in "Dark" palette. SurfaceVariantLightColor is the Surface color however in "Light" Palette is an off white color to be visible on light backgrounds.

<!-- Variant Colors: Needed for android thumbtints. If a thumbtint color contains opacity, it will actually turn the thumb transparent. (Unwanted behavior) -->
	<ResourceDictionary.ThemeDictionaries>

		<!-- Light Theme -->
		<ResourceDictionary x:Key="Light">
			<!-- Non-opaque/transparent primary disabled color -->
			<Color x:Key="PrimaryVariantDisabledThumbColor">#E9E5FA</Color>
			<!-- Non-opaque/transparent white color that shows on white surfaces -->
			<Color x:Key="SurfaceVariantLightColor">#F7F7F7</Color>
		</ResourceDictionary>

		<!-- Dark Theme -->
		<ResourceDictionary x:Key="Dark">
			<!-- Non-opaque/transparent primary medium color -->
			<Color x:Key="PrimaryVariantDisabledThumbColor">#57507C</Color>
			<Color x:Key="SurfaceVariantLightColor">#121212</Color>
		</ResourceDictionary>
	</ResourceDictionary.ThemeDictionaries>

DatePickers and TimePickers

If your application uses DatePickers and/or TimePickers (these are native components). To apply your material colors to these android components, do the following (this will affect every DatePicker/TimePicker in the application).

  1. From your Android project head go to YourProject.Droid/Resources/values/Styles.xml Inside your AppTheme add two item's "datePickerDialogTheme" (the style for your DatePicker) and "timePickerDialogTheme" (the style for your TimePicker), and a new Style with the MaterialPrimary Color as AccentColor (see our example code below)
<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<style name="AppTheme" parent="Theme.AppCompat.Light">

		<!-- Color style for Time/Date Pickers -->
		<item name="android:datePickerDialogTheme">@style/AppCompatDialogStyle</item>
		<item name="android:timePickerDialogTheme">@style/AppCompatDialogStyle</item>
	</style>

	<style name="AppCompatDialogStyle" parent="Theme.AppCompat.Light.Dialog">
		<item name="colorAccent">@color/MaterialPrimaryColor</item>
	</style>
</resources>
  1. (Optional) If your application uses Light/Dark color palettes. 2.1 Inside the Styles.xml file change the AppTheme's parent of both styles to Theme.Compat.DayNight
<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<style name="AppTheme" parent="Theme.AppCompat.DayNight">

		<!-- Color style for Time/Date Pickers -->
		<item name="android:datePickerDialogTheme">@style/AppCompatDialogStyle</item>
		<item name="android:timePickerDialogTheme">@style/AppCompatDialogStyle</item>
	</style>

	<style name="AppCompatDialogStyle" parent="Theme.AppCompat.DayNight.Dialog">
		<item name="colorAccent">@color/MaterialPrimaryColor</item>
	</style>
</resources>

2.2 From your Android project head go to YourProject.Droid/Resources/values create a file called "colors.xml", inside include your "Light" theme colors.

<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<color name="MaterialPrimaryColor">#5B4CF5</color>
</resources>

2.3 From your Android project head go to YourProject.Droid/Resources create a folder called "values-night", inside the folder add a file called "colors.xml", and inside the file include your "Dark" theme colors.

<?xml version="1.0" encoding="utf-8" ?>
<resources>
	<color name="MaterialPrimaryColor">#B6A8FB</color>
</resources>

Migration

1.0 to 1.1

  • Color Palette Override

    Now you have the possibility to override the Material color palette with your own color palette. See the #Getting Started section for more details.

     <MaterialColors xmlns="using:Uno.Material"
     				OverrideSource="ms-appx:///ColorPaletteOverride.xaml" />
  • Namespace breaking changes

    BREAKING CHANGE: Everything (controls, extensions, converters, ...), previously under Uno.Material.* or Uno.Cupertino.*, has now been moved under Uno.Material or Uno.Cupertino.

     xmlns:um="using:Uno.Material"
     xmlns:uc="using:Uno.Cupertino"
  • Some controls have been moved to Uno.Toolkit.UI

    List of the controls and styles that have been moved to Uno.Toolkit.UI:

    Controls StyleNames
    Card MaterialOutlinedCardStyle
    MaterialElevatedCardStyle
    MaterialAvatarOutlinedCardStyle
    MaterialAvatarElevatedCardStyle
    MaterialSmallMediaOutlinedCardStyle
    MaterialSmallMediaElevatedCardStyle
    Chip MaterialFilledInputChipStyle
    MaterialFilledChoiceChipStyle
    MaterialFilledFilterChipStyle
    MaterialFilledActionChipStyle
    MaterialOutlinedInputChipStyle
    MaterialOutlinedChoiceChipStyle
    MaterialOutlinedFilterChipStyle
    MaterialOutlinedActionChipStyle
    ChipGroup MaterialFilledInputChipGroupStyle
    MaterialFilledChoiceChipGroupStyle
    MaterialFilledFilterChipGroupStyle
    MaterialFilledActionChipGroupStyle
    MaterialOutlinedInputChipGroupStyle
    MaterialOutlinedChoiceChipGroupStyle
    MaterialOutlinedFilterChipGroupStyle
    MaterialOutlinedActionChipGroupStyle
    Divider MaterialDividerStyle
  • Some controls have been removed

    List of the controls and styles that have been removed from Uno.Themes:

    Controls StyleNames
    BottomNavigationBar MaterialBottomNavigationBarStyle
    ExpandingBottomSheet MaterialExpandingBottomSheetStyle
    ModalStandardBottomSheet MaterialModalStandardBottomSheetStyle
    StandardBottomSheet MaterialStandardBottomSheetStyle
    SnackBar MaterialSnackBarStyle
    • BottomNavigationBar was replaced by TabBar in Uno.Toolkit.UI, but it is not an exact 1:1 replacement. In the mean time, if you really need the badge and/or other customizability, two options are available:

      Import locally the old sources (control + style) from Uno.Themes;

      OR

      Copy the MaterialBottomTabBarItemStyle from Uno.Toolkit.UI, and modify the style to suit your needs. (Note that there are two copies of the style, one for iOS and Android and one for rest of the platforms: UWP, Skia, WASM, etc...);

    • For StandardBottomSheet and ModalStandardBottomSheet It's replaced by using a Flyout and the MaterialFlyoutPresenterStyle that is allowing you to have a bottom sheet.

      For example:

       <Flyout Placement="Full"
               LightDismissOverlayMode="On"
               FlyoutPresenterStyle="{StaticResource MaterialFlyoutPresenterStyle}">
       	<Grid MaxHeight="370"
       		  VerticalAlignment="Bottom">
       		...Your bottom sheet content...
       	</Grid>
       </Flyout>
    • For SnackBar: so far no replacement for SnackBar has been added to Uno.Toolkit.UI, but it's planned to add one in a future version.

Changelog

Please consult the CHANGELOG for more information about version history.

License

This project is licensed under the Apache 2.0 license - see the LICENSE file for details.

Contributing

Please read CONTRIBUTING.md for details on the process for contributing to this project.

Be mindful of our Code of Conduct.

Acknowledgments

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].