Fable.Core 5.0.0-beta.4

This is a prerelease version of Fable.Core.
dotnet add package Fable.Core --version 5.0.0-beta.4
                    
NuGet\Install-Package Fable.Core -Version 5.0.0-beta.4
                    
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="Fable.Core" Version="5.0.0-beta.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Fable.Core" Version="5.0.0-beta.4" />
                    
Directory.Packages.props
<PackageReference Include="Fable.Core" />
                    
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 Fable.Core --version 5.0.0-beta.4
                    
#r "nuget: Fable.Core, 5.0.0-beta.4"
                    
#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 Fable.Core@5.0.0-beta.4
                    
#: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=Fable.Core&version=5.0.0-beta.4&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Fable.Core&version=5.0.0-beta.4&prerelease
                    
Install as a Cake Tool

Fable: F# |> JS

Nuget Build Join the chat at https://gitter.im/fable-compiler/Fable

Follow us on Twitter!

Fable is an F# to JavaScript compiler powered FSharp Compiler Services, designed to make F# a first-class citizen of the JavaScript ecosystem. Check the website for more information and if you find the project useful, don't forget to give us a star!

Fable actually uses a fork of FCS with a few tweaks. Binaries are in lib/fcs folder. See this PR for more info.

Getting started

Check this page.

Building

Requirements

Use VSCode Dev Container

You can use VSCode Dev Container to get a preconfigured environment both with requirements and VSCode extensions.

  1. You need to have docker installed and running.
  2. Install the Dev Container extension in VSCode
  3. Open the project in VSCode and click on the green button in the bottom left corner.
Use your machine

Make sure the following requirements are installed in your system:

Build

Run ./build.sh or ./build.cmd to see the build options.

When using VSCode, you can also run the build tasks from the command palette (Ctrl+Shift+P) by typing Run Task and selecting the task you want to run.

We also configured several debug configurations that you can use from the debug panel (Ctrl+Shift+D). This is useful as you can attach the debugger to the Fable compiler process to check what's going on.

Contributing

Just by using Fable you're already contributing! You can help the community a lot by sharing examples and experiences in your personal (or Fable's) blog and/or by editing the Fable Resources page.

Send bug reports (ideally with minimal code to reproduce the problem) and feature requests to this GitHub repository. To interact with the community you can use the Gitter chat but please note maintainers are not checking the chat regularly.

If you are up to contribute a fix or a feature yourself, you're more than welcome! Please send first an issue or a minimal Work In Progess PR so we can discuss the implementation details in advance.

List of changelogs

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 (634)

Showing the top 5 NuGet packages that depend on Fable.Core:

Package Downloads
Fable.Browser.Blob

Package Description

Thoth.Json.Net

Elm-inspired encoder and decoder for JSON targetting .Net and NetCore runtime

Fable.Browser.Event

Package Description

Fable.Browser.Dom

Package Description

Fable.Browser.WebStorage

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
5.0.0-beta.4 608 12/8/2025
5.0.0-beta.3 151 12/4/2025
5.0.0-beta.2 495 11/19/2025
5.0.0-beta.1 880 7/25/2025
4.5.0 60,657 3/3/2025
4.4.0 6,724 2/16/2025
4.3.0 153,512 1/25/2024
4.2.0 54,087 10/24/2023
4.1.1 596 10/18/2023
4.1.0 51,716 9/29/2023
4.0.0 60,046 3/18/2023
4.0.0-theta-007 10,230 11/13/2022
4.0.0-theta-006 2,789 10/14/2022
4.0.0-theta-005 1,155 10/4/2022
4.0.0-theta-004 462 9/28/2022
4.0.0-theta-003 2,160 9/22/2022
4.0.0-theta-002 384 9/21/2022
4.0.0-theta-001 1,929 9/9/2022
4.0.0-snake-island-alpha-007 6,617 7/25/2022
4.0.0-snake-island-alpha-006 318 7/12/2022
4.0.0-snake-island-alpha-005 432 6/3/2022
4.0.0-snake-island-alpha-004 364 5/25/2022
4.0.0-snake-island-alpha-003 316 5/23/2022
4.0.0-snake-island-alpha-002 349 5/20/2022
4.0.0-snake-island-alpha-001 356 5/11/2022
4.0.0-beta-001 298 9/7/2022
3.7.1 416,418 5/27/2022
3.7.0 38,650 4/29/2022
3.6.2 139,704 2/17/2022
3.6.1 76,636 11/26/2021
3.6.0 4,806 11/19/2021
3.6.0-beta-001 614 11/17/2021
3.4.0 28,399 10/1/2021
3.3.1 13,175 9/16/2021
3.3.0-beta-001 1,735 8/28/2021
3.2.9 20,199 8/26/2021
3.2.8 156,529 6/11/2021
3.2.7 173,732 5/14/2021
3.2.6 15,032 4/9/2021
3.2.5 26,442 3/11/2021
3.2.4 26,626 2/12/2021
3.2.3 17,894 1/8/2021
3.2.2 9,992 12/22/2020
3.2.1 4,414 12/16/2020
3.2.0 6,571 12/4/2020
3.1.6 811,941 9/22/2020
3.1.5 517,731 2/10/2020
3.1.4 71,581 12/23/2019
3.1.3 55,622 11/7/2019
3.1.2 27,321 10/14/2019
3.1.1 57,865 9/25/2019
3.1.0 6,400 9/17/2019
3.0.0 944,476 4/16/2019
3.0.0-beta-006 1,586 4/12/2019
3.0.0-beta-005 8,823 3/13/2019
3.0.0-beta-004 4,257 3/12/2019
3.0.0-beta-003 692 3/5/2019
3.0.0-beta-002 1,169 3/4/2019
3.0.0-beta-001 645 2/28/2019
2.1.0-alpha-002 3,415 1/22/2019
2.1.0-alpha-001 777 1/22/2019
2.0.3 43,433 12/10/2018
2.0.2 11,919 11/20/2018
2.0.1 10,696 10/26/2018
2.0.0 32,617 9/28/2018
2.0.0-beta-001 10,409 8/1/2018
2.0.0-alpha-015 1,083 7/30/2018
2.0.0-alpha-014 1,228 7/19/2018
2.0.0-alpha-012 1,481 7/12/2018
2.0.0-alpha-011 2,539 6/25/2018
2.0.0-alpha-010 2,536 6/4/2018
2.0.0-alpha-006 2,565 5/30/2018
2.0.0-alpha-002 1,450 5/25/2018
2.0.0-alpha-001 1,419 5/24/2018
1.3.17 31,232 5/10/2018
1.3.16 4,254 5/5/2018
1.3.12 28,337 3/22/2018
1.3.11 10,868 3/8/2018
1.3.9 6,392 3/1/2018
1.3.8 77,535 1/23/2018
1.3.7 25,524 12/21/2017
1.3.6 3,640 12/14/2017
1.3.5 2,436 12/13/2017
1.3.4 4,257 11/29/2017
1.3.3 3,641 11/27/2017
1.3.1 5,233 11/21/2017
1.3.0 3,782 11/15/2017
1.3.0-beta-009 1,396 11/15/2017
1.3.0-beta-008 1,369 11/14/2017
1.3.0-beta-007 1,482 11/10/2017
1.3.0-beta-006 1,478 10/27/2017
1.3.0-beta-003 1,829 10/26/2017
1.3.0-beta-002 1,569 10/19/2017
1.3.0-beta-001 1,724 9/29/2017
1.2.4 22,911 9/27/2017
1.2.3 3,595 9/18/2017
1.2.2 2,861 9/18/2017
1.2.1 5,759 9/10/2017
1.2.0 6,566 9/6/2017
1.2.0-beta-004 1,261 9/5/2017
1.2.0-beta-003 2,276 8/31/2017
1.2.0-beta-002 2,019 8/30/2017
1.2.0-beta-001 2,503 8/23/2017
1.1.16 2,243 9/5/2017
1.1.15 8,877 8/22/2017
1.1.14 3,983 8/8/2017
1.1.12 2,943 7/31/2017
1.1.11 5,273 7/27/2017
1.1.10 4,800 7/24/2017
1.1.9 2,254 7/22/2017
1.1.8 7,886 7/18/2017
1.1.7 5,635 7/11/2017
1.1.6 6,107 7/4/2017
1.1.5 2,421 6/28/2017
1.1.4 2,315 6/24/2017
1.1.3 5,245 6/20/2017
1.1.2 5,243 6/20/2017
1.1.1 3,665 6/19/2017
1.1.0 2,336 6/15/2017
1.1.0-rc-002 1,542 6/12/2017
1.1.0-rc-001 1,554 6/10/2017
1.0.14 2,319 6/14/2017
1.0.12 2,132 6/14/2017
1.0.11 2,610 6/13/2017
1.0.10 2,246 6/13/2017
1.0.9 2,163 6/13/2017
1.0.8 10,255 6/2/2017
1.0.7 4,024 5/27/2017
1.0.6 4,109 5/24/2017
1.0.5 2,235 5/24/2017
1.0.4 5,516 5/17/2017
1.0.3 2,208 5/17/2017
1.0.2 2,470 5/17/2017
1.0.1 8,032 5/17/2017
1.0.0-narumi-921 2,172 5/17/2017
1.0.0-narumi-920 1,414 5/16/2017
1.0.0-narumi-918 2,024 5/16/2017
1.0.0-narumi-917 1,691 5/16/2017
1.0.0-narumi-916 1,808 5/15/2017
1.0.0-narumi-915 2,769 5/9/2017
1.0.0-narumi-912 3,582 4/23/2017
1.0.0-narumi-911 1,674 4/19/2017
1.0.0-narumi-910 1,552 4/19/2017
1.0.0-narumi-909 1,739 4/14/2017
1.0.0-narumi-908 2,305 4/2/2017
1.0.0-narumi-906 1,778 3/29/2017
1.0.0-narumi-905 1,592 3/27/2017
1.0.0-narumi-904 1,614 3/25/2017
1.0.0-narumi-903 1,700 3/23/2017
1.0.0-narumi-8 2,316 3/15/2017
1.0.0-narumi-7 1,512 3/14/2017
1.0.0-narumi-6 1,550 3/14/2017
1.0.0-narumi-5 1,647 3/13/2017
1.0.0-narumi-4 1,275 3/13/2017
1.0.0-narumi-15 1,728 3/22/2017
1.0.0-narumi-1 2,099 3/10/2017

### Added

* [Python] Add `[<Py.DecorateTemplate>]` attribute for creating custom decorator attributes (by @dbrattli)
* [Python] Add `[<Py.ClassAttributesTemplate>]` attribute for creating custom class attribute shortcuts (by @dbrattli)
* [Python] Add `[<Py.DataClass>]` as a built-in shorthand for `[<Py.ClassAttributes(style = Attributes, init = false)>]` (by @dbrattli)

### Changed

* [Python] `[<Py.Decorate>]` now emits decorator strings verbatim and adds `importFrom` parameter for explicit import control (by @dbrattli)