Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


F# to JavaScript compiler with JQuery etc. mappings through a TypeScript type provider

Subscribe to updates I use FunScript

Statistics on FunScript

Number of watchers on Github 448
Number of open issues 49
Average time to close an issue 3 months
Main language F#
Average time to merge a PR 16 days
Open pull requests 4+
Closed pull requests 6+
Last commit over 2 years ago
Repo Created almost 7 years ago
Repo Last Updated over 1 year ago
Size 54.5 MB
Organization / Authorzachbray
Page Updated
Do you use FunScript? Leave a review!
View open issues (49)
View FunScript activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating FunScript for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


Please note: this project is not actively maintained anymore. Please look at these alternatives: Fable or WebSharper.

FunScript consists of a standalone F# to JavaScript compiler library and a Type Provider to TypeScript. FunScript lets you connect to client and server APIs with Intellisense and types automagically using F# 3's Type Provider mechanism.


  • Windows: TeamCity build status
  • Mono: Build Status

Compiler Library

The compiler library generates JavaScript code that can be run in-browser or server-side inside Node.js. Simply mark F# modules to be compiled with the ReflectedDefinition attribute. The compiler library has minimal dependencies and can be run inside either Visual Studio or MonoDevelop.


Please help test the compiler libary and type provider by building samples and reporting issues.

More information

Please see the FunScript website.

FunScript open issues Ask a question     (View All Issues)
  • about 3 years How
  • over 3 years Compiling in interactive mode returns "false"
  • over 3 years Method overriding generates no code or errors
  • over 3 years exclude "build/" and "TestResult.xml" from respository
  • over 3 years "rx.all.js" is not found when running tests on windows
  • over 3 years test "FunScript.Tests.Strings.String.Format with extra formatting works" fails on machines with non-invariant locale
  • over 3 years How can we create custom binding ?
  • almost 4 years Tests fail on clean checkout on OS X (mono 4.0.3)
  • about 4 years System.ArgumentException: Interface not found
  • about 4 years "Unexpected argument format" is thrown when calling a module function with implicit arguments
  • about 4 years Escaped identifiers are compiled as-is, even if they aren't valid JS
  • about 4 years Maintainers/re-org needed
  • about 4 years Using functions from System module inside expressions fail
  • over 4 years lib folder missing
  • over 4 years Examples don't work with nuget 1.1.94
  • over 4 years Can't build Krzysztof-Cieslak/FSharp.Atom on Mac OS X: "System.NotImplementedException: Derived classes must implement it"
  • over 4 years Trying to get started, The type 'Api' is not defined
  • over 4 years FunScript FNext
  • over 4 years "System.Exception: Cycle detected" - building TypeScript bindings
  • almost 5 years Getting started documentation
  • almost 5 years JSON serialisation issues esp with JSON.Net 6.0
  • almost 5 years Argument not passed to method in JS
  • almost 5 years Implement System.Decimal
  • almost 5 years A logo for FunScript?
  • almost 5 years Add replacement for System.Random.Next()
  • about 5 years Compilation fails when a d.ts file contains a module and a type that share the same name
  • about 5 years Using TypeScript bindings with node.js
  • about 5 years Confusion between some TypeScript and .NET types
  • about 5 years Implementing the new TypeScript sum types in the bindings
  • about 5 years Creating TypeScript bindings from custom definitions
FunScript open pull requests (View All Pulls)
  • Fixing #203 by setting Culture to invariant before running the test
  • Refactor to facilitate amd modules.
  • Standalone compiler improvment
  • Optimize Code Generation via Google Closure
FunScript questions on Stackoverflow (View All Questions)
  • FunScript: How to access TypeScript.Api<...>
  • FunScript querySelector null result
  • How to really 'get started' with FunScript
  • How to pass arguments to funscript function?
  • int -> string conversion in Funscript?
  • How to pass a "Function" type in FunScript?
  • Using type from F# host via Ajax in FunScript JS code
  • Using decimal values in FunScript
  • Adding Funscript to an existing ASP.NET MVC project
  • How are interfaces exported in Funscript
  • Funscript and Async.RunSynchronously
  • Async.RunSynchronously in funscript
  • What weaknesses of FunScript should I be aware of?
  • Funscript examples - can't connect to server
FunScript list of languages used
Other projects in F#