Project Description
A Mobile Web app sample (for an insurance company) in F# and WebSharper .

All code is in F#.

HTML5 and client side JavaScript is generated by WebSharper.

You can see the live sample running here:

The sample shows the following features:

- Use of WebSharper for rich / mobile web development.

- Use of the JQuery Mobile framework to handle HTML5 mobile browser formatting, touch input, animation effects and DOM manipulation. Including dynamic injection of DOM content.

- Asynchronous browser-server communication via the WebSharper 'RPC' mechanism

- Client side asynchronous processing.

- HTML5 Location (the location is obtained, if enabled, when a "new claim" is created).

- Page formatting (headers / footer toolbar) and transitioning between DOM-loaded pages with page-level event handling.

- Dialog and Notification pages

- Submission of 'form' data (done via the RPC mechanism not actual form submission)

The application has been tested on a variety of HTML5 capable browsers and seems to work fine.

Note: I noticed an issue with an old Android phone where a page transition sometimes resulted in blank page and the application needed to be refreshed. This issue is seen after loading the 'billing' page which downloads a 'large' amount of data. No app issues were seen in the Android emulators targeting different versions of the Android OS.

No JavaScript coding was required. All code - client-side, server-side, HTML5 content, etc. - is done in F#.

Data types (classes) can be shared across the client-server boundary and the RPC mechanism makes the remote 'AJAX' calls trivial to do. (No fluffy 'REST' is required).

WebSharper leverages F#'s functional programming features and meta-programming capability to generate the client side JavaScript and HTML/DOM.

The source code can be downloaded or browsed from the "Source Code" tab.

Last edited Dec 16, 2012 at 8:49 PM by fwaris, version 11