Feliz 3.0.0-rc.3

This is a prerelease version of Feliz.
dotnet add package Feliz --version 3.0.0-rc.3
                    
NuGet\Install-Package Feliz -Version 3.0.0-rc.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Feliz" Version="3.0.0-rc.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Feliz" Version="3.0.0-rc.3" />
                    
Directory.Packages.props
<PackageReference Include="Feliz" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Feliz --version 3.0.0-rc.3
                    
#r "nuget: Feliz, 3.0.0-rc.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Feliz@3.0.0-rc.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Feliz&version=3.0.0-rc.3&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Feliz&version=3.0.0-rc.3&prerelease
                    
Install as a Cake Tool

Feliz Nuget Build status

A fresh retake of the React API in Fable, optimized for happiness.

Here is how it looks like:

module App

open Feliz

[<ReactComponent>]
let Counter() =
    let (count, setCount) = React.useState(0)
    Html.div [
        Html.button [
            prop.style [ style.marginRight 5 ]
            prop.onClick (fun _ -> setCount(count + 1))
            prop.text "Increment"
        ]

        Html.button [
            prop.style [ style.marginLeft 5 ]
            prop.onClick (fun _ -> setCount(count - 1))
            prop.text "Decrement"
        ]

        Html.h1 count
    ]

open Browser.Dom

let root = ReactDOM.createRoot(document.getElementById "root")
root.render(Counter())

Features

  • Consistent, lightweight formatting: no more awkward indentation using two lists for every element.
  • Discoverable attributes with no more functions, Html attributes or css properties globally available so they are easy to find.
  • Proper documentation: each attribute and CSS property
  • Full React API support: Feliz aims to support the React API for building components using hooks, context and more.
  • Fully Type-safe: no more Margin of obj but instead utilizing a plethora of overloaded functions to account for the overloaded nature of CSS attributes, covering 90%+ of the CSS styles, values and properties.
  • Included color list of most commonly used Html colors in the colors module.
  • Compatible with the current React DSL used in applications.
  • Compatible with Femto.
  • Approximately Zero bundle size increase where everything function body is erased from the generated javascript unless you actually use said function.

Quick Start

dotnet new -i Feliz.Template
dotnet new feliz -n MyProject
cd MyProject
npm install
npm start

Documentation

Feliz has extensive documentation at https://zaid-ajaj.github.io/Feliz with live examples along side code samples, check them out and if you have any question, let us know!

Product 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 was computed.  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 netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (131)

Showing the top 5 NuGet packages that depend on Feliz:

Package Downloads
Feliz.Router

A router component for React and Elmish that is focused, powerful and extremely easy to use.

Feliz.Bulma

Package Description

Feliz.UseListener

React hooks for easy event listener management.

Feliz.UseDeferred

Hooks for dead-simple data fetching with Feliz

Feliz.Recharts

Recharts bindings based on the Feliz API

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.0-rc.3 43 10/25/2025
3.0.0-rc.2 130 10/7/2025
3.0.0-rc.1 155 10/2/2025
2.9.0 43,849 10/26/2024
2.8.0 32,251 6/22/2024
2.8.0-beta.0 3,217 12/25/2023
2.7.0 41,243 10/8/2023
2.6.0 65,746 3/21/2023
2.5.0 636 3/18/2023
2.4.1 4,536 2/23/2023
2.4.0 15,109 1/14/2023
2.3.0 22,702 12/27/2022
2.2.0 469 12/27/2022
2.1.0 460 12/27/2022
2.0.1 588 12/25/2022
2.0.0 8,751 12/25/2022
2.0.0-prerelease-003 7,175 9/16/2022
2.0.0-prerelease-002 7,060 9/1/2022
2.0.0-prerelease-001 318 8/26/2022
1.68.0 52,142 8/17/2022
1.67.0 9,228 8/5/2022
1.66.0 2,092 8/3/2022
1.65.0 30,021 7/9/2022
1.64.0 18,289 5/9/2022
1.63.0 886 5/9/2022
1.62.0 27,708 4/19/2022
1.61.0 27,315 3/12/2022
1.60.0 1,420 3/5/2022
1.59.0 13,239 2/24/2022
1.58.1 7,269 2/10/2022
1.58.0 1,355 2/3/2022
1.57.0 27,432 11/29/2021
1.56.0 4,047 11/8/2021
1.55.0 12,303 11/5/2021
1.54.0 3,826 10/24/2021
1.53.0 3,831 10/2/2021
1.52.0 10,700 9/10/2021
1.51.0 9,003 8/17/2021
1.50.0 3,000 8/8/2021
1.49.0 20,206 7/7/2021
1.48.0 627 7/7/2021
1.47.0 20,912 6/13/2021
1.46.0 2,239 6/8/2021
1.45.0 10,745 5/13/2021
1.44.0 1,922 5/3/2021
1.43.0 6,545 4/16/2021
1.42.0 1,666 4/10/2021
1.41.0 1,002 4/8/2021
1.40.1 5,207 3/30/2021
1.40.0 2,588 3/24/2021
1.39.0 652 3/24/2021
1.38.0 1,504 3/17/2021
1.37.0 5,040 3/8/2021
1.36.0 700 3/6/2021
1.35.0 1,380 2/28/2021
1.34.0 1,890 2/21/2021
1.33.1 16,929 2/21/2021
1.33.0 3,584 2/4/2021
1.32.0 18,580 12/27/2020
1.31.1 1,486 12/22/2020
1.31.0 990 12/22/2020
1.30.0 751 12/22/2020
1.29.0 2,247 12/15/2020
1.28.0 24,131 12/15/2020
1.27.0 799 12/13/2020
1.25.0 864 12/12/2020
1.24.0 1,278 12/10/2020
1.23.0 653 12/10/2020
1.22.1 695 12/10/2020
1.22.0 6,280 12/2/2020
1.21.0 867 12/2/2020
1.20.0 1,206 11/27/2020
1.19.0 654 11/26/2020
1.18.0 1,270 11/26/2020
1.17.0 12,795 11/15/2020
1.16.2 3,378 11/1/2020
1.16.1 781 10/30/2020
1.16.0 6,185 10/23/2020
1.15.0 1,136 10/23/2020
1.14.1 4,959 10/19/2020
1.14.0 4,828 9/19/2020
1.13.2 1,820 9/16/2020
1.13.1 13,981 9/1/2020
1.13.0 4,836 8/16/2020
1.12.1 1,440 8/10/2020
1.12.0 1,286 8/9/2020
1.11.0 2,539 8/8/2020
1.10.1 1,473 7/30/2020
1.10.0 752 7/29/2020
1.9.0 732 7/29/2020
1.8.0 786 7/29/2020
1.7.0 2,752 7/16/2020
1.6.0 9,531 7/3/2020
1.5.0 14,111 6/24/2020
1.4.0 792 6/24/2020
1.3.0 18,639 6/7/2020
1.2.0 4,445 6/4/2020
1.1.1 11,188 5/24/2020
1.1.0 5,463 5/21/2020
1.0.0 3,685 5/16/2020
0.86.0 4,694 5/9/2020
0.85.0 2,199 5/7/2020
0.84.0 895 5/4/2020
0.83.0 3,474 5/4/2020
0.82.0 818 5/3/2020
0.81.0 1,278 4/30/2020
0.80.0 831 4/28/2020
0.79.0 734 4/28/2020
0.78.0 1,712 4/27/2020
0.77.0 727 4/26/2020
0.76.0 1,663 4/26/2020
0.75.0 3,700 4/22/2020
0.74.2 5,919 4/20/2020
0.74.1 4,631 4/12/2020
0.74.0 6,673 3/29/2020
0.73.0 1,888 3/26/2020
0.72.0 6,183 3/22/2020
0.71.0 1,777 3/20/2020
0.70.0 2,672 3/17/2020
0.69.0 1,998 3/12/2020
0.68.10 6,700 12/10/2019
0.68.9 4,277 12/5/2019
0.68.8 1,732 12/5/2019
0.68.7 2,662 12/4/2019
0.68.6 1,710 12/1/2019
0.68.5 1,710 11/29/2019
0.68.3 4,286 11/27/2019
0.68.2 8,127 11/18/2019
0.68.1 1,661 11/18/2019
0.68.0 4,503 11/14/2019
0.67.2 2,583 11/13/2019
0.67.1 1,780 11/4/2019
0.67.0 2,027 11/4/2019
0.66.5 1,657 11/3/2019
0.66.4 1,424 11/3/2019
0.66.3 1,600 11/1/2019
0.66.2 1,496 11/1/2019
0.66.1 2,655 10/31/2019
0.66.0 1,793 10/30/2019
0.65.5 1,539 10/29/2019
0.65.4 1,574 10/28/2019
0.65.3 1,509 10/28/2019
0.65.2 1,318 10/27/2019
0.65.1 1,267 10/27/2019
0.65.0 1,638 10/27/2019
0.64.0 1,306 10/27/2019
0.63.0 1,747 10/22/2019
0.62.0 1,131 10/21/2019
0.61.0 1,086 10/21/2019
0.60.0 803 10/20/2019
0.59.0 1,323 10/20/2019
0.58.0 2,633 10/14/2019
0.57.2 1,352 10/12/2019
0.57.1 1,147 10/10/2019
0.57.0 1,824 10/8/2019
0.56.0 1,549 10/6/2019
0.55.0 791 10/6/2019
0.54.0 997 10/6/2019
0.53.0 1,293 10/5/2019
0.52.0 1,062 9/14/2019
0.51.0 786 9/14/2019
0.50.0 795 9/10/2019
0.49.0 829 9/9/2019
0.48.0 799 9/9/2019
0.47.0 1,191 8/31/2019
0.46.0 1,284 8/28/2019
0.45.0 797 8/28/2019
0.44.0 781 8/27/2019
0.42.0 830 8/26/2019
0.41.0 838 8/19/2019
0.40.0 1,417 8/13/2019
0.39.0 831 8/13/2019
0.38.0 850 8/5/2019
0.37.0 832 8/5/2019
0.36.0 875 7/31/2019
0.35.0 888 7/29/2019
0.34.0 853 7/28/2019
0.33.0 821 7/28/2019
0.32.0 844 7/28/2019
0.31.0 816 7/28/2019
0.30.0 840 7/27/2019
0.29.0 784 7/26/2019
0.28.0 807 7/26/2019
0.27.0 814 7/26/2019
0.26.0 797 7/26/2019
0.25.0 824 7/26/2019
0.24.0 778 7/25/2019
0.23.0 842 7/25/2019
0.22.0 813 7/25/2019
0.20.0 797 7/25/2019
0.19.0 812 7/25/2019
0.18.0 810 7/24/2019
0.17.0 812 7/24/2019
0.16.0 837 7/23/2019
0.15.0 795 7/22/2019
0.14.0 817 7/22/2019
0.13.0 806 7/22/2019
0.12.0 833 7/22/2019
0.11.0 759 7/22/2019
0.10.1 792 7/22/2019
0.10.0 835 7/22/2019
0.9.0 807 7/22/2019
0.8.0 802 7/22/2019
0.7.0 812 7/22/2019
0.6.0 851 7/22/2019
0.5.0 808 7/21/2019
0.4.0 774 7/21/2019
0.3.0 767 7/21/2019
0.2.0 812 7/21/2019
0.1.0 1,030 7/21/2019

### Changed

- Improved performance for createElement used for `seq<IReactProperty>`