Fabulous 10.0.2
See the version list below for details.
dotnet add package Fabulous --version 10.0.2
NuGet\Install-Package Fabulous -Version 10.0.2
<PackageReference Include="Fabulous" Version="10.0.2" />
<PackageVersion Include="Fabulous" Version="10.0.2" />
<PackageReference Include="Fabulous" />
paket add Fabulous --version 10.0.2
#r "nuget: Fabulous, 10.0.2"
#:package Fabulous@10.0.2
#addin nuget:?package=Fabulous&version=10.0.2
#tool nuget:?package=Fabulous&version=10.0.2
Fabulous combines the power of functional programming and the simple Model-View-Update architecture to build any kind of mobile and desktop applications with an expressive, dynamic and clean UI DSL
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- FSharp.Core (>= 8.0.300)
-
net10.0
- FSharp.Core (>= 8.0.300)
NuGet packages (7)
Showing the top 5 NuGet packages that depend on Fabulous:
| Package | Downloads |
|---|---|
|
Fabulous.XamarinForms
Declarative UIs for Xamarin.Forms with F# and MVU, using Fabulous |
|
|
Fabulous.LiveUpdate
LiveUpdate injects updated source code files while running to allow you to quickly view the effects of your changes without restarting the application. Needs fabulous-cli to work. |
|
|
Fabulous.SimpleElements
An alternative view rendering API for Fabulous that is easy to use and simple to read, inspired by Elmish on the web. |
|
|
Fabulous.MauiControls
Declarative UIs for .NET MAUI with F# and MVU, using Fabulous |
|
|
Fabulous.Avalonia
Declarative UIs for AvaloniaUI with F# and MVU, using Fabulous |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Fabulous:
| Repository | Stars |
|---|---|
|
egvijayanand/dotnet-maui-samples
Sample apps for working with .NET MAUI
|
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.4 | 83 | 10/12/2026 |
| 10.0.3 | 381 | 9/30/2026 |
| 10.0.2 | 183 | 9/27/2026 |
| 10.0.1 | 406 | 9/7/2026 |
| 10.0.0 | 271 | 8/24/2026 |
| 3.0.0-pre9 | 394 | 11/8/2024 |
| 3.0.0-pre23 | 578 | 6/5/2025 |
| 3.0.0-pre22 | 665 | 5/18/2025 |
| 3.0.0-pre21 | 352 | 4/7/2025 |
| 3.0.0-pre20 | 427 | 2/28/2025 |
| 3.0.0-pre19 | 685 | 1/16/2025 |
| 3.0.0-pre18 | 214 | 1/16/2025 |
| 3.0.0-pre17 | 403 | 12/15/2024 |
| 3.0.0-pre16 | 517 | 11/22/2024 |
| 3.0.0-pre15 | 265 | 11/21/2024 |
| 3.0.0-pre14 | 200 | 11/21/2024 |
| 3.0.0-pre13 | 249 | 11/21/2024 |
| 3.0.0-pre12 | 238 | 11/20/2024 |
| 3.0.0-pre11 | 231 | 11/16/2024 |
| 3.0.0-pre10 | 290 | 11/14/2024 |
### Added
- Document the historical `Cmd` module breaking changes between Fabulous 2.4.x and 10.0.1 (removed `Cmd.ofSub`/`Cmd.dispatch`, the `Cmd.OfAsync`/`Cmd.OfTask` relocations, and the two-continuation `either` signature) in `docs/guides/migration.md` (#1336, #1337, #1338, #1339).
### Changed
- Bump the `Microsoft.NET.Test.Sdk` version from `18.9.0` to `18.10.0` in `Directory.Packages.props` (Repo Assist).
- Bump `BenchmarkDotNet` from `0.14.0` to `0.15.8` and `Microsoft.NET.Test.Sdk` from `18.10.0` to `18.10.1` in `Directory.Packages.props` (Repo Assist).
- Revert the `FSharp.Core` package version floor bump from `10.1.401` back to `10.0.100` in `Directory.Packages.props`, after CI (#1351, #1354) confirmed it triggers a `NullReferenceException` in Apple's `ILStrip` post-processing tool when building the `net10.0-ios` sample target, keeping the `Microsoft.NET.Test.Sdk`/`BenchmarkDotNet` bumps intact (Repo Assist, #1355).
- Suppress the 60 `FS0044` deprecation warnings from MAUI's own `[Obsolete]` attributes on `SwitchCell`/`EntryCell`/`Page.IsBusy`/`SafeArea` by adding `#nowarn "44"` to `Views/Cells/_Cell.fs`, `EntryCell.fs`, `SwitchCell.fs`, `Views/Pages/_Page.fs`, `ContentPage.fs`, and `Views/Layouts/_Layout.fs`, ahead of the 10.0.2 release (Repo Assist, #1344).
- Replace the immutable `Set`-based subscription-diffing in `Sub.Internal.diff`/`Sub.Internal.NewSubs.calculate` with a mutable `HashSet`, avoiding repeated O(log n) tree-node allocations on every `Program` update cycle (Repo Assist, #1202).
- Optimize `StackArray3.combine` to avoid an intermediate array allocation when merging a `Few`-cased value with a `Many`-cased array, writing directly into the final result array instead of allocating via `toArray`/`Array.append` (Repo Assist, #1234).
- Bump the `Avalonia` package version from `12.1.1` to `12.1.2` in `Directory.Build.props` (Repo Assist, #1317).
- Bump the `fabulous-avalonia` template's default `Avalonia`/`Avalonia.Desktop`/`Avalonia.Android`/`Avalonia.iOS`/`Avalonia.Themes.Fluent` package versions from `11.3.0` to `12.1.1` in `templates/avalonia/**/.template.config/template.json` (@kant2002, #1321).
- Document that the `fabulous-avalonia` single-project template's `net10.0-android`/`net10.0-ios` target frameworks require the `android`/`ios` .NET workloads, and document the previously-unlisted desktop-only `fabulous-avalonia-desktop` template as a workload-free alternative, in the Avalonia tutorial, get-started guide, and templates README (Repo Assist, #1319, #1326).
- Add Windows-from-Visual-Studio debugging guidance (Solution Platform selector, MSIX-packaged vs. unpackaged apps) to the MAUI tutorial and get-started guide (#1306, #1307, #1308, #1309, #1310, #1334, #1335).
- Fix formatting and clarify instructions in the Avalonia get-started guide and tutorial (#1329, #1330, #1331).
- Replace the dead Discord "Contact us" link with a mailto link in the website header (#1313).
### Fixed
- Add unit tests for `StackArray3`'s `add`, `get`, `find`, and `combine` operations, covering the `Few`/`Many` representation transitions and error paths that previously had no test coverage (Repo Assist).
- Route exceptions thrown by the leading-edge `emit` call in `DispatchThrottle.Dispatch` to `onError`, matching the error handling already used by the timer callback and `FlushAsync`, so a throwing dispatch handler no longer crashes the caller's dispatch thread (Repo Assist).