fable-core
Fable core lib and bindings for native JS objects, browser and Node APIs
RELEASE NOTES · Follow us on Twitter!
Installation
npm install --save fable-core
Usage
For general information on how to use Fable, please check the documentation.
fable-core
uses ES5 syntax but it calls some ES2015 APIs (Symbol
, Map
, Set
...),
so you will need a polyfill like core-js to use it
in environments that don't support these APIs.
The default distribution uses ES2015 modules in order to produce smaller sizes with bundlers
like Rollup (embedded with fable-compiler
) or Webpack 2.
If you are not bundling your app, you'll probably need the UMD distribution instead (see below).
F# project (.fsproj)
<ItemGroup>
<Reference Include="node_modules/fable-core/Fable.Core.dll" />
</ItemGroup>
F# script (.fsx)
#r "node_modules/fable-core/Fable.Core.dll"
open Fable.Core
open Fable.Import
Usage without bundling
Node
If you're writing a Node application and don't use a module bundler, you just need
to instruct fable-compiler
to use fable-core
UMD distribution by passing --coreLib fable-core/umd
among the compiler options.
require.js
If you target the browser and prefer to load JS dependencies asynchronously instead of bundling,
you can easily load fable-core
files with require.js as follows:
<script src="node_modules/requirejs/require.js"></script>
<script>
requirejs.config({
paths: {
'fable-core': 'node_modules/fable-core/umd'
}
});
</script>