FPish.net - All blog entries by Adam GraniczAll blog entries shared on FPish.net by Adam Granicz.uuid:c5ba5c0a-c89b-4392-86c3-9abd8608b4ab;id=4022024-03-19T05:30:46Z2020116-converting-a-websharper-html-app-to-a-client-server-oneConverting a WebSharper HTML app to a client-server one2020-01-16T17:18:00Z2024-03-19T05:30:46ZIn my previous article about "F# metablogging: introducing BlogEngine for your static markdown-based F# blog", I briefly outlined a quick strategy to switch a WebSharper HTML project to a hosted, client-server app, and vice versa. In this article, I will walk through some suprises that came along the way and what I did to resolve them.20191226-f-metablogging-introducing-blogengine-for-your-static-markdown-based-f-blogF# metablogging: introducing BlogEngine for your static markdown-based F# blog2019-12-26T19:10:00Z2024-03-19T05:30:46ZIn this article, I want to show you another way of keeping your SSG in F#: using WebSharper. Armed with the full power of a .NET web framework and its templating features (see the HTML templates section), this has numerous advantages, most importantly, among others, that you can embed dynamic features written in F# or C# to give you a truly impressive and dynamic blog, despite being statically generated.201995-your-first-bolero-project-not-compiling-try-thisYour first Bolero project not compiling? Try this!2019-09-05T04:29:00Z2024-03-19T05:30:46ZThe Bolero homepage starts off with a video that shows you how to create your first client-server app with three simple commands, ...20181219-announcing-try-f-on-webassemblyAnnouncing Try F# on WebAssembly2018-12-19T17:55:00Z2024-03-19T05:30:46ZJust a short week ago, we announced the first release of Bolero, enabling full-stack F# web development on WebAssembly. Since then we have been working on a small side project to see what it would take to implement a fully client-side implementation of the F# compiler: basically, to embed FSharp.Compiler.Services (FCS) in a small Bolero application.20181210-from-enterprise-to-next-generation-web-celebrating-11-years-with-websharperFrom enterprise to next-generation web: celebrating 11 years with WebSharper2018-12-10T06:00:00Z2024-03-19T05:30:46ZA brief outline of the historical circumstances around WebSharper (just some notes in no particular order) that **position it for a bright future outlook**, and a quick glimple of what we are working on with it to advance the current state of F# web programming.201849-part-2-model-view-update-mvu-style-apps-with-websharper-uiPart 2. Model-View-Update (MVU) style apps with WebSharper UI2018-04-09T20:37:00Z2024-03-19T05:30:46ZIn this tutorial, you will learn about using WebSharper UI to implement a simple Model-View-Update (MVU) application pattern, similar to the Elm architecture. In subsequent tutorials, you will learn about enhancing this pattern to a full-scale application development architecture (The WebSharper Architecture) that has superior performance and sufficient flexibility to implement any type of web application.2018327-first-steps-using-html-templates-accessing-form-values-and-wiring-eventsFirst steps: Using HTML templates, accessing form values, and wiring events2018-03-27T18:57:00Z2024-03-19T05:30:46ZCongratulations on taking the first step to learn WebSharper! We have carefully put together this hands-on tutorial with the aim to help you get started with WebSharper and on your way to learn functional, reactive web development, putting you on a fast track to unleash the real web developer in you. The skills you pick up with WebSharper will make you a better web developer, and the concepts you learn will remain valid and useful with other functional, reactive web frameworks and libraries as well.20171229-serving-spasServing SPAs2017-12-29T18:21:00Z2024-03-19T05:30:46ZConsider a very typical scenario: you have a web application that serves an SPA. The SPA itself has several "pages," each with its own client-side routed URLs (think of Gmail, for instance.) Then people copy some of these URLs from their "session" and send them to others, who in turn expect to find exactly what the sender saw. Except with most SPAs, the server-side knows nothing about the URLs generated on the client and usually throws you back to some initial SPA page. Implementing this properly requires you to share all or a subset of the URLs both on the server and on the client. With WebSharper, this is easy.20161231-simple-reactive-scenarios-with-websharperSimple reactive scenarios with WebSharper2016-12-31T23:15:00Z2024-03-19T05:30:46ZOne of the most fundamental design considerations any developer must deal with is handling change. In this article, we are primarily concerned with client-side state and changes to it. Change can be brought about by various external factors (user input such as mouse or keyboard events, server push messages, etc.) or by means internal to the application itself.201646-a-faster-and-slicker-try-websharperA faster and slicker Try WebSharper2016-04-06T19:51:00Z2024-03-19T05:30:46ZA while ago we rolled out a new UI for Try WebSharper, essentially changing it into a snappy single-page application (SPA). Among others, you can now switch between trying out various snippets and making your own without any noticable delay, no more annoying page refreshes. [more..]20151226-websharper-a-year-in-reviewWebSharper - a year in review2015-12-26T15:25:00Z2024-03-19T05:30:46ZJust over a year ago, last year in December we released WebSharper 3 on Apache, putting it into the hands of every F# web developer. One thing we learned from WebSharper 2 is that more frequent releases are better and this year kept the whole team busy with constant innovation and new releases. Below is a list I cherry-picked from the WebSharper blog.. [more]2015114-data-aware-workbooks-and-client-side-data-access-with-websharper-dataData-aware workbooks and client-side data access with WebSharper.Data2015-11-04T16:35:00Z2024-03-19T05:30:46ZF# has always excelled at accessing heterogeneous data sources in server-side code through its unique type provider feature: a metaprogramming technique that enables generating (or "providing") domain-specific code to be consumed during compilation, such as generating typed schemas for relational databases, CSV and other data files, or bindings for web services and integration with other languages such as R. Type providers are given an optional set of arguments in your code using custom F# syntax, yielding a type space in return.
2015107-announcing-websharper-3-5-with-pluggable-html-supportAnnouncing WebSharper 3.5 with pluggable HTML support2015-10-07T13:30:00Z2024-03-19T05:30:46ZWe are happy to announce the availability of WebSharper 3.5, bringing a couple important changes and numerous bug fixes. Most notably, this release brings alternate HTML implementations to your WebSharper applications, and while there are only two at the moment, new flavors and variations (both in syntax and capabilities), and integrations with third-party markup engines are coming your way soon.201591-live-f-coding-and-snippets-with-dependencies-in-try-websharperLive F# coding and snippets with dependencies in Try WebSharper2015-09-01T12:26:00Z2024-03-19T05:30:46ZTry WebSharper reached an important milestone today: we just released the first bits of on-the-fly typechecking and code completion, and you can now develop F# web snippets, without any installation, online more easily than ever.
2015819-try-websharper-snippet-versioning-gist-import-and-other-enhancements-now-availableTry WebSharper: snippet versioning, gist import, and other enhancements now available2015-08-19T20:24:00Z2024-03-19T05:30:46ZA new Try WebSharper is out adding a couple handy new features and addressing a couple annoyances, making it even more easy to publish your F# and WebSharper snippets.201587-share-and-embed-try-websharper-snippetsShare and embed Try WebSharper snippets2015-08-09T02:33:00Z2024-03-19T05:30:46ZJust four days ago we released Try WebSharper, and here we go with the first feature enhancement: embedding snippets. A huge thanks to Don Syme for suggesting it.201586-new-websharper-templatesNew WebSharper templates2015-08-06T14:36:00Z2024-03-19T05:30:46ZThe recent release of WebSharper 3.4 also brought an update to most of the project templates shipped for Visual Studio, MonoDevelop, and Xamarin Studio.
201584-introducing-try-websharperIntroducing Try WebSharper2015-08-04T10:46:00Z2024-03-19T05:30:46ZWe are thrilled to announce the availability of Try WebSharper, a simple and fun way to create and share WebSharper snippets with others!2015613-introducing-websharper-warpIntroducing WebSharper Warp2015-06-15T11:47:00Z2024-03-19T05:30:46ZWebSharper Warp is a friction-less web development library for building scripted and standalone full-stack F# client-server applications. Warp is built on top of WebSharper and is designed to help you become more productive and benefit from the rich WebSharper features more quickly and more directly. While Warp shorthands target the most typical applications (text, SPAs, multi-page) and easy exploration, you can extend your Warp applications with the full WebSharper capabilities at any time.
201569-websharper-3-2-with-support-for-scriptable-applications-better-resource-management-and-additional-streamlined-syntaxWebSharper 3.2 with support for scriptable applications, better resource management, and additional streamlined syntax2015-06-09T13:45:00Z2024-03-19T05:30:46ZWe are thrilled to announce the availability of WebSharper 3.2, paving the road to further upcoming enhancements to streamline developing and deploying WebSharper apps, and also shipping several key changes summarized here.
2015512-deploying-websharper-apps-to-azure-via-githubDeploying WebSharper apps to Azure via GitHub2015-05-15T17:57:00Z2024-03-19T05:30:46ZThis article describes a basic WebSharper client-server application template that you can deploy to Azure via GitHub commits.2015428-websharper-site-enhancementsWebSharper site enhancements2015-04-28T02:58:00Z2024-03-19T05:30:46ZThe recent WebSharper 3 release also saw a number of enhancements to the WebSharper website, including a major reorganization to its content. In this post, I will summarize these, in particular [...]2015417-cloudsharper-0-9-30-with-websharper-3-templatesCloudSharper 0.9.30 with WebSharper 3 templates2015-04-17T18:13:00Z2024-03-19T05:30:46ZTo match yesterdays's official WebSharper 3 release, we are following up with a CloudSharper update, version 0.9.30. Most importantly, this release comes with updated WebSharper 3 project templates and the new UI.Next project template to make it easy to try out WebSharper 3 online.
2015328-fpish-quality-of-life-enhancementsWebSharper forum enhancements2015-03-28T08:56:00Z2024-03-19T05:30:46ZIn recent weeks we had been busy with a series of enhancements to the WebSharper website and some underlying FPish services. [more...]2014123-websharper-3-alpha-now-under-apache-2WebSharper 3 alpha now under Apache 22014-12-03T19:25:00Z2024-03-19T05:30:46ZWe are super excited to announce that as of the very latest 3.0-alpha commit, WebSharper is now available under the Apache 2.0 license, free of charge to anyone, for both closed and open source applications!20141113-self-hosted-websharper-application-template-availableSelf-hosted WebSharper application template available2014-11-13T23:18:00Z2024-03-19T05:30:46ZA new Visual Studio template has been added to the latest Visual Studio installer called "Self-Hosted Client-Server Application," and you can use this template to build OWIN-based self-hosted applications that can be deployed via an .exe file and without requiring an installed web container (IIS, etc.) on the serving machine.201471-upcoming-cloudsharper-features-in-q3Upcoming CloudSharper features in Q32014-07-01T13:34:00Z2024-03-19T05:30:46ZAs we all gear up for an exciting summer, I wanted to share some insights into the upcoming CloudSharper enhancements we are rolling out in the next few months.
2014515-program-f-with-cloudsharper-everywhereProgram F# with CloudSharper everywhere2014-05-15T19:36:00Z2024-03-19T05:30:46ZAre you an F# user on Mac OS or Linux, looking for the easiest way to develop multi-project F# solutions with full code assistance and type checking? Would you like to use F# Interactive for developing and testing parts of your web applications interactively? Would you like to benefit from the multitude of web libraries in your development environment? Well, if yes - look no further, CloudSharper, the world's most versatile online IDE has arrived to Mac and Linux!
2014325-cloudsharper-0-9-9CloudSharper 0.9.92014-03-25T01:40:00Z2024-03-19T05:30:46ZThis release continues our efforts to require fewer dependencies on your machine before you can use CloudSharper. In earlier releases, various CloudSharper templates (most notably, the WebSharper Sitelet Website template) required .targets files that were part of Visual Studio. This dependency is now eliminated.2014314-cloudsharper-local-alpha-0-9-8CloudSharper Local alpha 0.9.82014-03-14T22:44:00Z2024-03-19T05:30:46ZWe are happy to announce CloudSharper Local alpha 0.9.8, encapsulating the latest enhancements to the F# compiler service and delivering several bug fixes to CloudSharper's msbuild support.