WebSharper

Last updated
WebSharper
Original author(s) Intellifactory
Initial release2008
Stable release
4.5.14 / May 29, 2019 (2019-05-29)
Written in F#
Operating system Linux, Windows, Mac OS X, Android, iOS, Windows Phone
Available in F#, C#
Type Ajax framework
License Apache License 2.0, Commercial
Website websharper.com

WebSharper is an open-source and commercial web-programming framework that allows web developers to create and maintain complex JavaScript and HTML5 front-end applications in the F# programming language. Other than a few native libraries, everything is F# source.

Contents

Overview

WebSharper includes support for jQuery, HTML5, DOM and EcmaScript. WebSharper Mobile includes support for Android, iOS and Windows Phone Formlets and Sitelets.

Unlike many other web-programming toolkits, WebSharper offers a rich set of abstractions and DSL syntax for common web-related chores, such as composing HTML, defining web forms, managing required resources and handling URLs safely. [1]

Extensions

WebSharper extensions include

Development environments

WebSharper can be used with any text editor. WebSharper can also be used with Visual Studio 2008/2010/2012 templates with full ASP.NET integration and with MonoDevelop.

Mobile

As a general framework for making web apps, WebSharper is also capable of being used as a framework for making mobile and tablet apps, either by making the needed widgets and animations from scratch, or by using one of the mobile frameworks for WebSharper. An HTML5 app written in WebSharper can have separate views for Tablets and Mobile phones.

Examples

The following sample displays a single HTML paragraph:

[<JavaScript>]letMain()=Div[P[Text"Welcome"]]

The matching server-side code is also written in F#:

typeHelloWorldViewer()=inheritWeb.Control()[<JavaScript>]overridethis.Body=HelloWorld.Main():>Html.IPagelet

See also

Notes

  1. Adam Granicz. "F# mobile development" . Retrieved 2012-11-26.

Related Research Articles

<span class="mw-page-title-main">Adobe Flash</span> Deprecated multimedia platform used to add animation and interactivity to websites

Adobe Flash was, except in China, a multimedia software platform used for production of animations, rich internet applications, desktop applications, mobile apps, mobile games, and embedded web browser video players.

<span class="mw-page-title-main">Google Web Toolkit</span> Free Java library

Google Web Toolkit, or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. It is licensed under Apache License 2.0.

QF-Test from Quality First Software is a cross-platform software tool for automated testing of programs via the graphical user interface. The program is specialized on cross-browser test automation of static and dynamic web-based applications. Version 4.1 added support for MacOS and the Apple Safari and Microsoft Edge browsers via the Selenium WebDriver. RESTful web service testing. From version 5.0, Windows applications can also be tested and modern C++ applications. Version 5.3 added support for the Chrome DevTools protocol, which allows browsers to be controlled using CDP drivers.

This is a comparison of web frameworks for front-end web development that are heavily reliant on JavaScript code for their behavior.

NS Basic is a family of development tools developed and commercially marketed by NSB Corporation in Toronto, Ontario, Canada for iOS, Android, Microsoft Windows, MacOS, Linux, BlackBerry OS, WebOS, Newton OS, Palm OS, Windows CE and Windows Mobile.

iUI is a lightweight open source Web application framework consisting of a JavaScript library, Cascading Style Sheets (CSS), and images for developing advanced mobile web applications (webapps). It allows developers unfamiliar with programming languages such as Objective-C, or who don't want to build native applications using proprietary software development kits (SDKs), to use plain HTML, CSS, and JavaScript to build native-looking webapps.

ZK is an open-source Ajax Web application framework, written in Java, that enables creation of graphical user interfaces for Web applications with little required programming knowledge.

Apache Cordova is a mobile application development framework created by Nitobi. Adobe Systems purchased Nitobi in 2011, rebranded it as PhoneGap, and later released an open-source version of the software called Apache Cordova. Apache Cordova enables software programmers to build hybrid web applications for mobile devices using CSS3, HTML5, and JavaScript, instead of relying on platform-specific APIs like those in Android, iOS, or Windows Phone. It enables the wrapping up of CSS, HTML, and JavaScript code depending on the platform of the device. It extends the features of HTML and JavaScript to work with the device. The resulting applications are hybrid, meaning that they are neither truly native mobile application nor purely Web-based. They are not native because all layout rendering is done via Web views instead of the platform's native UI framework. They are not Web apps because they are packaged as apps for distribution and have access to native device APIs. Mixing native and hybrid code snippets has been possible since version 1.9.

<span class="mw-page-title-main">MoSync</span>

MoSync is a discontinued free and open-source software development kit (SDK) for mobile applications. It is integrated with the Eclipse development environment. The framework produces native mobile applications for multiple platforms using C/C++, HTML5 scripting and any combination thereof. The target group for MoSync are both web developers looking to enter the mobile space, as well as the ordinary PC/Mac desktop developer with knowledge in C/C++ development.

<span class="mw-page-title-main">Sencha Touch</span> JavaScript framework

Sencha Touch is a user interface (UI) JavaScript library, or web framework, specifically built for the Mobile Web. It can be used by Web developers to develop user interfaces for mobile web applications that look and feel like native applications on supported mobile devices. It is based on web standards such as HTML5, CSS3 and JavaScript. The goal of Sencha Touch is to facilitate quick and easy development of HTML5 based mobile apps which run on Android, iOS, Windows, Tizen and BlackBerry devices, simultaneously allowing a native look and feel to the apps.

jQuery Mobile is a touch-optimized web framework, specifically a JavaScript library, developed by the jQuery project team. The development focuses on creating a framework compatible with many smartphones and tablet computers, made necessary by the growing but heterogeneous tablet and smartphone market. The jQuery Mobile framework is consistent with other mobile app frameworks and platforms such as PhoneGap, Worklight, etc.

Foundation is a free responsive front-end framework, providing a responsive grid and HTML and CSS UI components, templates, and code snippets, including typography, forms, buttons, navigation and other interface elements, as well as optional functionality provided by JavaScript extensions. Foundation is an open source project, and was formerly maintained by ZURB. Since 2019, Foundation has been maintained by volunteers.

Google Chrome Experiments Online showroom of web browser based experiments

Google Chrome Experiments is an online showroom of web browser based experiments, interactive programs, and artistic projects. Launched on March 1, 2009, Google Chrome Experiments is an official Google website that was originally meant to test the limits of JavaScript and the Google Chrome browser's performance and abilities. As the project progressed, it took the role of showcasing and experimenting latest open-source web-based technologies, such as JavaScript, HTML5, WebGL, Canvas, SVG, CSS, and some others. All the projects on Chrome experiments are user submitted and are made using open source technologies. As of February 24, 2015, there were 1,000 different Chrome projects posted on the website.

DaVinci is a discontinued development tool by Incross for creating HTML5 mobile applications and media content. It includes a jQuery framework and a JavaScript library that developers and designers can use to create web applications on mobile devices with a user experience similar to native applications. Business applications, games, and rich media content, such as HTML5 multi-media magazines, advertisements, and animation, may be produced with the tool. DaVinci is based on standard web technology, including HTML5, CSS3, and JavaScript.

<span class="mw-page-title-main">WinJS</span> Open-source JavaScript library

The Windows Library for JavaScript is an open-source JavaScript library developed by Microsoft. It has been designed with the primary goal of easing development of Windows Store apps for Windows 8 and Windows 10, as well as Windows Phone apps for Windows Phone 8.1, Windows 10 Mobile and Xbox One applications using HTML5 and JavaScript, as an alternative to using WinRT XAML and C#, VB.NET or C++ (CX).

Crosswalk Project was an open-source web app runtime built with the latest releases of Chromium and Blink from Google. The project was founded by Intel's Open Source Technology Center in September 2013.

<span class="mw-page-title-main">React Native</span> Open-source mobile application framework

React Native is an open-source UI software framework created by Meta Platforms, Inc. It is used to develop applications for Android, Android TV, iOS, macOS, tvOS, Web, Windows and UWP by enabling developers to use the React framework along with native platform capabilities. It is used to develop the Android and iOS applications at Facebook, Microsoft, and Shopify. It is also being used to develop virtual reality applications at Oculus.

jQWidgets Software framework

jQWidgets is a software framework with widgets, themes, input validation, drag & drop plug-in, data adapters, built-in WAI-ARIA accessibility, internationalization and MVVM support. It is built on the open standards and technologies HTML5, CSS, JavaScript and jQuery. This library is used for developing responsive web and mobile applications. Some developers consider jQWidgets one of the top alternatives to the open-source jQuery UI.

Onsen UI is an open-source UI framework and components for HTML5 hybrid mobile app development, based on PhoneGap / Cordova. It allows developers to create mobile apps using Web technologies like CSS, HTML5, and JavaScript. While it was originally based on AngularJS and supported jQuery, with its version 2, Onsen UI has become JavaScript framework-agnostic, meaning developers can create mobile apps with or without any JavaScript framework. Onsen UI also provides comprehensive tools and services through Monaca, both products are developed by the same company. Onsen UI was created in 2013.

This is a list of articles related to the JavaScript programming language.

References