Hello Community,
This has been on my mind with the new year, and I just wanted to get it out there and get some discussion around it.
Currently, the vision around Xamarin.Forms is around building native UIs from a single code base. With the amazing talent of Jason Smith and team (and also of the community!), I don't think there will be any problem reaching all the target platforms in great fashion and functionality. In fact, I believe there are already community efforts around WPF and WinRT renderers for Xamarin.Forms.
The problem I have been thinking about is this: let's say I am a start-up (and I am. ), and I am going to build an app. I would use Xamarin.Forms to reach all the target app stores. Now, my problem is... what happens when a user loads my website on their device/workstation? Websites (or web applications) are obviously rendered in HTML5/JavaScript these days. This is something that Xamarin.Forms (as awesome as it is) does not do, currently (as far as I know). And so, I have been wondering if this is a known issue, and (more importantly) a known/possible direction for Xamarin.Forms.
Ideally, we (my start-up) would have 1 single code base (as currently designed/possible with Xamarin.Forms) that has rendering projects for:
- iOS (possible today)
- Droid (possible today)
- Windows Phone (possible today)
- Windows Store (or "Universal Apps" -- not entirely possible just yet, but again as mentioned WinRT rendering is a community effort)
- Web Application (not possible today, but would render in HTML5/JavaScript)
Then I, as a start-up, would only need 1 developer to hit all these primary target platforms. Otherwise, I would have to hire 1 Xamarin developer and 1 web application/site developer (and incur the overhead of two code bases -- precisely the problem space that Xamarin aims to solve).
As I am sure you know, a good (perfect, actually) example of a web application is Facebook. They have developed all of their native applications for the native app stores, but if you visit Facebook.com in your phone's browser, you will see a HTML5 application that does pretty much everything the native applications do (or in Windows Phone's case, even better. :P )
Has there been discussion around this? I would love to know, and sincerely apologize if there is and I am just adding to the noise.
Thank you for any discussion/feedback you can provide around this matter,
Michael