Third-Party and Vendored Code
================================================================================
This package is a Rust port of material_3_expressive and includes source code
vendored or ported from other projects. Vendored code is marked in module headers
(e.g., "Ported from", "Vendored from") with upstream attribution, version, and
license. The notices below preserve the original copyrights and license terms.
The package's declared license is `Apache-2.0 AND OFL-1.1` (see Cargo.toml):
the crate bundles Apache-2.0-only ported code (material-color-utilities,
androidx.graphics.shapes lineage, Material Icons path data) and OFL-1.1 font
data alongside its own workspace-licensed sources, so no MIT-only arm can be
offered for the combined artifact. The workspace root carries `LICENSE-MIT`
and `LICENSE-APACHE` for the workspace's own code; this crate ships its own
copies of every license text it needs, beside this file:
- `LICENSE-APACHE` — the Apache License, Version 2.0 (copy of the root text)
- `licenses/Apache-2.0.txt` — the Apache License, Version 2.0, for the ported
Android Open Source Project and Google LLC code
- `licenses/MIT.txt` — the MIT License, for the ported and vendored components
whose copyright holders are listed in the two MIT sections below
- `licenses/BSD-3-Clause.txt` — the BSD 3-Clause License of The Flutter
Authors, for the carousel view lineage
- `fonts/roboto-flex/OFL.txt` and `fonts/roboto-mono/OFL.txt` — the SIL Open
Font License 1.1 of the bundled fonts
================================================================================
MIT License — Root Crate
================================================================================
This crate contains a Rust port of material_3_expressive v1.0.8.
Copyright (c) 2026 Paa Developments <paa.code.me@gmail.com>
Original upstream: https://github.com/paadevelopments/material_3_expressive
License: MIT (text: `plugins/material/licenses/MIT.txt`)
================================================================================
MIT License — Additional Copyright Holders (Vendored Components)
================================================================================
Copyright (c) 2025 Emily Moonstone
Upstream: https://github.com/EmilyMoonstone/material_3_expressive
Ported to Rust for: icon buttons, navigation bar, navigation rail,
progress indicators, loading indicator wrapper
Reference: The original Dart components in material_3_expressive
Copyright (c) 2026 Mudit Purohit
Upstream: https://github.com/Mudit200408/m3e_buttons
Ported to Rust for: buttons, split buttons, toggle buttons, toggle button
groups
Reference: The original Dart components in material_3_expressive
Copyright (c) 2024 Mudit Purohit
Upstream: https://github.com/Mudit200408/m3e_dropdown_menu
Ported to Rust for: dropdown menus
Reference: The original Dart components in material_3_expressive
Copyright (c) 2026 Mudit Purohit
Upstream: https://github.com/Mudit200408/m3e_expandable
Ported to Rust for: expandable list items
Reference: The original Dart components in material_3_expressive
Copyright (c) 2025 Álvaro N
Upstream: https://github.com/alvaronp/expressive-refresh
Ported to Rust for: refresh indicator
Reference: The original Dart component in material_3_expressive
Copyright (c) 2024 Paa <paa.code.me@gmail.com>
Upstream: https://github.com/paadevelopments/m3_carousel
Ported to Rust for: carousel view layout (itself derived from Flutter
CarouselView; see BSD notice below)
Reference: The original Dart component in material_3_expressive
Copyright (c) 2025 Agbama Gifted
Upstream: https://github.com/agbamadavidtaiwo/material_new_shapes
Ported to Rust for: Material 3 shape tokens (RoundedCornerShape,
CutCornerShape)
License: MIT
Lineage note: Based on androidx.graphics.shapes (see Apache 2.0 section below)
================================================================================
BSD 3-Clause License — The Flutter Authors
================================================================================
Copyright 2014 The Flutter Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Applies to the carousel view component (src/components/carousel/):
The carousel view is ported from m3_carousel, which itself is derived from
Flutter's CarouselView. The same text is vendored as
`plugins/material/licenses/BSD-3-Clause.txt`.
================================================================================
Apache License, Version 2.0 — The Android Open Source Project
================================================================================
Copyright (c) 2024 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Applies to:
- Shape token implementation (src/shapes/: rounded_polygon.rs, morph.rs,
catalog.rs): ported from androidx.graphics.shapes and the
material_new_shapes package, which carry Apache-2.0 lineage from androidx.
- Loading indicator (src/loading_indicator.rs): ported from
androidx.compose.material3 LoadingIndicator.kt
(androidx/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/LoadingIndicator.kt)
via material_3_expressive's verbatim Dart vendoring of it
(m3e_expressive_loading_indicator.dart) — the shape sequence, per-shape
morph spring, and rotation choreography are this Apache-2.0-licensed
logic, transcribed onto this crate's own shapes::Morph engine.
- Material Icons path data (src/icons.rs): Apache-2.0, vendored verbatim from
Google's `material-design-icons` (`google/material-design-icons`), path
data as SVG `d` attributes in a 24x24 design box.
The complete Apache License, Version 2.0 text is vendored at
`plugins/material/licenses/Apache-2.0.txt`. Per Apache License, Section
4(d), any Derivative Works distributed must include a readable copy of the
attribution notices contained within this NOTICE file, excluding notices
that do not pertain to the Derivative Work.
================================================================================
Apache License, Version 2.0 — Google LLC (material-color-utilities)
================================================================================
Copyright (c) 2021 Google LLC
Upstream: https://github.com/material-foundation/material-color-utilities
Version: 0.11.1 (the Dart `material_color_utilities` package Flutter ships)
Ported to Rust for: the HCT seed-color engine (src/tokens/hct.rs) — sRGB/XYZ
/L* conversions, CAM16 viewing conditions, the CAM16
forward transform, the HCT solver, tonal and core
palettes, and the Material 3 tone-role table
License: Apache License, Version 2.0 — same terms as the section above, whose
license text (`plugins/material/licenses/Apache-2.0.txt`) and
Section 4(d) attribution requirement apply here too
================================================================================
OFL 1.1 License — Roboto Flex Font
================================================================================
Copyright 2017 The Roboto Flex Project Authors
Upstream: https://github.com/TypeNetwork/Roboto-Flex (per the shipped
font's own name table, ID 0; font version 3.200;gftools[0.9.32])
Bundled as: plugins/material/fonts/roboto-flex/RobotoFlex.ttf
License: SIL Open Font License 1.1 (no Reserved Font Name)
The Roboto Flex font family is licensed under the SIL Open Font License, Version 1.1.
See `plugins/material/fonts/roboto-flex/OFL.txt` for the complete OFL 1.1 text
(also FONTS-LICENSE for provenance details).
================================================================================
SIL Open Font License, Version 1.1 — Roboto Mono Font
================================================================================
Copyright 2015 The Roboto Mono Project Authors
Upstream: https://github.com/googlefonts/robotomono
Source: https://github.com/google/fonts/tree/main/ofl/robotomono
Bundled as: plugins/material/fonts/roboto-mono/RobotoMono.ttf
License: SIL Open Font License, Version 1.1 (verified from the shipped
font's own `name` table, nameID 13/14: "This Font Software is
licensed under the SIL Open Font License, Version 1.1" /
https://openfontlicense.org; the upstream Google Fonts repo path
above is itself under `ofl/`, Google Fonts' own OFL-licensed tree)
The Roboto Mono font family is licensed under the SIL Open Font License,
Version 1.1. See `plugins/material/fonts/roboto-mono/OFL.txt` for the
complete OFL 1.1 text (also FONTS-LICENSE for provenance details).
================================================================================
Module Attribution Header Convention
================================================================================
Each module that ports or vendors upstream code includes a header block
(2–4 lines) documenting the upstream source, version/revision, license, and
any porting decisions. Example:
// Ported from material_3_expressive v1.0.8 (MIT, © 2026 Paa Developments)
// Upstream: https://github.com/paadevelopments/material_3_expressive
// No license changes; shape semantics preserved from Dart port.
This convention is used by later design-system phases and plugin revisions
to maintain clear lineage tracking across vendored code.