F# executes on a broad range of app and gaming platforms such as Android, iOS, Mac OS X, JavaScript/HTML5 and Windows. Its concise syntax, interoperability with .NET libraries, and its ability to manage complexity of components such as state machines, calculation engines, and more make it an ideal tool for many aspects of game and app development.

In addition, F# has excellent support for managing the server-side of games or apps. This provides a compelling story of full stack development with a single language for both client and server. See the Web Programming and Cloud section for details of using F# with server-side technologies. For example, F# is used on the server-side of one of the largest Facebook social games, as described in this interview.

This guide includes resources related to app and game programming with F#. To contribute to this guide, log on to GitHub, edit this page and send a pull request.


Note that the resources listed below are provided only for educational purposes related to the F# programming language. The F# Software Foundation does not endorse or recommend any commercial products, processes, or services. Therefore, mention of commercial products, processes, or services should not be construed as an endorsement or recommendation.

Resources for App and Game Development

Higher-Level Application Development

These higher-level app development frameworks and tools support F#:

Xamarin App and Game Development

Xamarin provides app and game development tools for Android, iOS and other platforms. They support F# as part of their stack.

Cross platform examples and resources:

iOS examples and resources:

MonoGame

MonoGame is an open implementation of a cross-platform gaming framework originally based on the XNA 4 framework design. The goal of the project is to allow XNA developers on Xbox 360, Windows and Windows Phone to port their games to the iOS, Android, Mac OS X, Linux, Windows 8 Metro, and PlayStation Mobile.

Unity3D

Visual Studio 2013 Tools for Unity allows you to write and debug your Unity 3D games inside Microsoft Visual Studio. With this plugin you can debug DLLs built with F# in Visual Studio while running them from Unity3D.

Duality

Duality is a plugin based 2D game development framework based on C# and OpenTK. To get a quick overview, please visit the project page. Duality’s main strength is a fully featured extensible editor which is open source and MIT Licensed. An F# Scripting plugin (code) is also available.

Open Source Sample Projects