Getting Started with WebSharper™

Go ahead and grab the latest binaries from the Download page, and save it to a folder of your choice.

Running the installer will copy the WebSharper™ binaries and the Visual Studio extensions.

WebSharper™ comes with a new Visual Studio project type, making it super easy to start developing WebSharper™ applications quickly and painlessly. After the WebSharper™ installer finished, start Visual Studio and choose New/Project...

You can have several versions of WebSharper™ installed, and projects based on a particular version will continue to use that version. You can migrate a WebSharper™ project to a newer version simply by updating the WebSharper™ library references in that project to point to those in a newer version.

In the dialog box that appears select Visual F#, then IntelliFactory to get to the WebSharper™ project template. Note the WebSharper™ version number on the project template. If you have multiple versions of WebSharper™ installed, you will see multiple project templates with different versions. Select the appropriate version, fill in the name and location of the new project, and click OK.

The new WebSharper™ project actually adds two projects to your solution: one F# library project that contains your pagelets, and one web application project that exposes them as an ASP.NET application. WebSharper™ integrates with ASP.NET seamlessly through its runtime extensions, making it easy to migrate existing ASP.NET applications to WebSharper™.

At this point you have everything to get started with writing WebSharper™ applications. The project you just created comes with a short WebSharper™ application that demonstrates how to construct HTML (and XML) programmatically, how to bind events to various elements of your pagelets, and how to expose your pagelets as ASP.NET server controls that can be embedded into ASPX markup.

Be sure to check the Demos page for a growing collection of WebSharper™ examples. The API Reference page lists the F# modules and .NET core namespaces along with their members that you can use *in addition to* the JavaScript proxies and the growing number of library wrappers available as part of WebSharper™ that provide you with a type-safe F# bridge to those JavaScript-based technologies.