
Security News
Bun 1.2.19 Adds Isolated Installs for Better Monorepo Support
Bun 1.2.19 introduces isolated installs for smoother monorepo workflows, along with performance boosts, new tooling, and key compatibility fixes.
fable-compiler-netcore
Advanced tools
RELEASE NOTES · Follow us on Twitter!
Fable brings together the power of the F# compiler and Babel to make JavaScript a true backend for F#. Some of its main features are:
Fable is distributed through npm! You can install and run it just by typing:
npm install -g fable-compiler
fable path/to/your/project.fsproj
Note the package name is
fable-compiler
while the command is justfable
You can find more detailed instructions about F# to JS compilation in the docs. Also you can have a look at the samples or download them from here.
You must have F# 4 and node 4.4 or higher installed in your computer.
If you are having problems to use Fable under Windows, try the following:
fsc.exe
is added to the path.Just by using Fable you're already contributing! You can help a lot the community by sharing examples and experiences in your personal blog or by sending a PR to Fable's website (see this for more info).
Send bug reports (ideally with minimal code to reproduce the problem) and feature requests
to the GitHub repository. Issues with the label discussion
will be also added to ask the opinion of the community
on different topics like the logo, roadmap, etc. For more immediate comments you can use the Gitter chat.
A plugin system is also available to allow you extend Fable according to you needs.
Options are erased in compiled code. This has several benefits like removing overhead
and interacting with native JS functions in a safer way (null
will be None
).
However, it will lead to unexpected results if you do weird things like wrapping null
in Some
.
For practical purposes, Fable considers null
, undefined
, None
and unit
to be the same thing.
Information about generic types is not included in the generated JavaScript, so code that depends on this information to be known at runtime for method dispatching may have unexpected behaviour.
To know more, read Compatibility.
Of course, this project wouldn't have been possible without the fantastic work of the F# compiler and Babel teams. I hope they feel proud seeing how their work has met in a very unexpected way, giving developers even more possibilities to build great apps.
The awesome F# community has played a big role in making this possible. I've met incredible people and it's impossible to list all the names without forgetting anyone, but I'd like to give a particular mention to Zach Bray for his work on FunScript, Don Syme (the fact that the designer of the language himself shows interest in your work, no matter how humble it is, is really a big push!) and Krzysztof Cieślak (I always have to look up the name to spell it correctly) because he's shown that F# is a perfect fit for a big project targeting JS.
And finally I'd like to thank my partner (is it too old-fashioned to say wife?) for bearing with me everyday.
FAQs
F# to JavaScript compiler
The npm package fable-compiler-netcore receives a total of 124 weekly downloads. As such, fable-compiler-netcore popularity was classified as not popular.
We found that fable-compiler-netcore demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Bun 1.2.19 introduces isolated installs for smoother monorepo workflows, along with performance boosts, new tooling, and key compatibility fixes.
Security News
Popular npm packages like eslint-config-prettier were compromised after a phishing attack stole a maintainer’s token, spreading malicious updates.
Security News
/Research
A phishing attack targeted developers using a typosquatted npm domain (npnjs.com) to steal credentials via fake login pages - watch out for similar scams.