Fable.Package.SDK 1.3.2

dotnet add package Fable.Package.SDK --version 1.3.2
                    
NuGet\Install-Package Fable.Package.SDK -Version 1.3.2
                    
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.Package.SDK" Version="1.3.2">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Fable.Package.SDK" Version="1.3.2" />
                    
Directory.Packages.props
<PackageReference Include="Fable.Package.SDK">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
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.Package.SDK --version 1.3.2
                    
#r "nuget: Fable.Package.SDK, 1.3.2"
                    
#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.Package.SDK@1.3.2
                    
#: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.Package.SDK&version=1.3.2
                    
Install as a Cake Addin
#tool nuget:?package=Fable.Package.SDK&version=1.3.2
                    
Install as a Cake Tool

Fable.Package.SDK

NuGet

Sponsors badge link

Fable.Package.SDK is a set of MSBuild targets and tasks that help you build and package Fable projects.

Features 🚀

  • Automatically add Fable specific tags to PackageTags based on the FablePackageType property
  • Automatically include F# source files in the package if needed
  • Check that at least one Fable target is defined in the PackageTags property
  • Set GenerateDocumentationFile to true
  • Set up your package for improving IDE experiences by setting:
    • DebugType to embedded
    • EmbedUntrackedSources to true

Installation

.NET CLI

dotnet add package Fable.Package.SDK

This will add the package to your project file.

<PackageReference Include="Fable.Package.SDK" Version="x.y.z" />
    <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    <PrivateAssets>all</PrivateAssets>
</PackageReference>

These rules are necessary to ensure that the package is not included in the final package, you don't want you package to depend on Fable.Package.SDK at runtime.

Paket

# In your paket.dependencies
nuget Fable.Package.SDK copy_local: true

# In your paket.references
Fable.Package.SDK

Usage

1. Set the FablePackageType property

Set the FablePackageType property in your project file to one of the following values:

  • library: If your package is a library that can be used by Fable.

    Examples of libraries could be Fable.Promise, Elmish, Thoth.Json, Feliz

    This will include the source files in the package.

  • binding: If your package consist of a set of API to make a native library available

    For example:

    • A package which makes an NPM package API available
    • A package which makes the Browser API available
    • A package which makes a cargo package API available

    <br/>

    Only the DLL will be included in the package, allowing for a faster build and smaller package size.

2. Specify the targets

Choose one or more of the following tags:

  • fable-dart: Dart is supported by the package
  • fable-dotnet: .NET is supported by the package
  • fable-javascript: JavaScript is supported by the package
  • fable-python: Python is supported by the package
  • fable-rust: Rust is supported by the package
  • fable-all: Package is compatible with all Fable targets.

A package can be compatible with all targets if it depends only on packages that are also compatible with all targets.

A package compatible with all targets cannot be a binding, as these are target-specific.

Example:

If your package supports only JavaScript you need to use fable-javascript

If your package supports both JavaScript and Python, you need to use fable-javascript and fable-python

Example of use case

If your package is a binding which target JavaScript you need to write:

<PropertyGroup>
    <PackageTags>fable-javascript</PackageTags>
    <FablePackageType>binding</FablePackageType>
</PropertyGroup>

If your package is a library which targets JavaScript and Python you need to write:

<PropertyGroup>
    <PackageTags>fable-javascript;fable-python</PackageTags>
    <FablePackageType>library</FablePackageType>
</PropertyGroup>
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • .NETStandard 2.0

    • No dependencies.

NuGet packages (5)

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

Package Downloads
FCQRS.Model

Package Description

FreeAct

Package Description

FCQRS8.Model

Package Description

Glutinum.Feliz.ReactSignaturePadWrapper

Package Description

Glutinum.SignaturePad

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.3.2 2,170 6/20/2025
1.3.1 982 4/14/2025
1.3.0 9,271 10/21/2024
1.2.0 355 10/20/2024
1.1.0 1,221 10/2/2024
1.0.0 11,863 7/27/2024
0.1.0 6,219 6/2/2024

## 1.3.2

### 🐞 Bug Fixes

- Respect folder structure when copying `.fs` files under `fable` folder ([8bf3036](https://github.com/easybuild-org/EasyBuild.FileSystemProvider/commit/8bf303629a5b42b4a56419617bcafb4384ce1daf))