Feliz.CompilerPlugins
                             
                            
                                3.0.0-rc.1
                            
                        
                    dotnet add package Feliz.CompilerPlugins --version 3.0.0-rc.1
NuGet\Install-Package Feliz.CompilerPlugins -Version 3.0.0-rc.1
<PackageReference Include="Feliz.CompilerPlugins" Version="3.0.0-rc.1" />
<PackageVersion Include="Feliz.CompilerPlugins" Version="3.0.0-rc.1" />
<PackageReference Include="Feliz.CompilerPlugins" />
paket add Feliz.CompilerPlugins --version 3.0.0-rc.1
#r "nuget: Feliz.CompilerPlugins, 3.0.0-rc.1"
#:package Feliz.CompilerPlugins@3.0.0-rc.1
#addin nuget:?package=Feliz.CompilerPlugins&version=3.0.0-rc.1&prerelease
#tool nuget:?package=Feliz.CompilerPlugins&version=3.0.0-rc.1&prerelease
Feliz  
 
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, Htmlattributes 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 objbut instead utilizing a plethora of overloaded functions to account for the overloaded nature ofCSSattributes, covering 90%+ of the CSS styles, values and properties.
- Included color list of most commonly used Htmlcolors in thecolorsmodule.
- 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 | 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 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. | 
- 
                                                    .NETStandard 2.0- Fable.AST (>= 5.0.0-beta.2)
 
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Feliz.CompilerPlugins:
| Package | Downloads | 
|---|---|
| Feliz A fresh retake of the React API in Fable, optimized for happiness | |
| Elmish.Store A library that merges Elmish and React, providing an external store with efficient, selective component rendering capabilities. | 
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated | 
|---|---|---|
| 3.0.0-rc.1 | 188 | 10/2/2025 | 
| 2.2.0 | 167,015 | 3/21/2023 | 
| 2.1.0 | 713 | 3/18/2023 | 
| 2.0.0 | 39,101 | 12/25/2022 | 
| 2.0.0-prerelease-003 | 6,648 | 9/16/2022 | 
| 2.0.0-prerelease-002 | 7,202 | 9/1/2022 | 
| 2.0.0-prerelease-001 | 406 | 8/26/2022 | 
| 1.10.0 | 85,588 | 7/9/2022 | 
| 1.9.0 | 19,049 | 5/9/2022 | 
| 1.8.0 | 27,719 | 4/19/2022 | 
| 1.7.0 | 28,958 | 3/5/2022 | 
| 1.6.0 | 85,149 | 8/8/2021 | 
| 1.5.0 | 58,496 | 3/24/2021 | 
| 1.4.0 | 1,634 | 3/17/2021 | 
| 1.3.0 | 7,650 | 2/21/2021 | 
| 1.2.0 | 49,977 | 12/15/2020 | 
| 1.1.0 | 1,258 | 12/12/2020 | 
| 1.0.0 | 1,502 | 12/10/2020 | 
| 0.10.0 | 804 | 12/10/2020 | 
| 0.9.0 | 6,552 | 12/2/2020 | 
| 0.8.0 | 941 | 12/2/2020 | 
| 0.7.0 | 1,252 | 11/27/2020 | 
| 0.6.0 | 660 | 11/26/2020 | 
| 0.5.0 | 1,594 | 11/26/2020 | 
| 0.4.0 | 12,660 | 11/15/2020 | 
| 0.3.0 | 3,502 | 11/1/2020 | 
| 0.2.0 | 922 | 10/30/2020 | 
| 0.1.0 | 6,338 | 10/23/2020 | 
### Added
- `[<ReactLazyComponent>]` attribute
### Changed
- Make `[<ReactComponent>]` transpile arguments to JavaScript object instead of `any` for better typescript support