Simple Desktop Shell for HTML Apps - air

I am looking for a simple desktop application shell to display an HTML and Javascript application. The web code will be bundled with the app and the app won't need network access. Basically all I need is a window with a webkit view in it I can point to a file on the user's computer.
I thought this would be simple, but I can't find a quick solution to it. What I have looked at so far:
Adobe Air - Fails due to some crazy security choices that break my web framework.
Titanium Desktop - Fails due to some strange page loading sequences that result in dom weirdness.
Chromeless - Looks perfect but discontinued and their download code no longer works.
PhoneGap - No desktop component.
XULRunner - Looks very complex for my needs.
Various others - not cross-platform (I need Windows and Mac), discontinued.
All I want is a simple shell around to display my HTML and run my JS. Please tell me my only solution isn't to use the WebKit view in something like Qt.
Thank you!

See this: http://code.google.com/p/chromiumembedded/
There are also bindings for using this from other languages like Python.

AppJS have served me well in creating desktop shells for html5 apps. I think you should give it a try. It's quite easy to tinker with.

Related

How to create windows phone app of my existing responsive website?

I have responsive website and wanted to create app for windows phone. So is there any way to make the same? online or by using any other technology (like phone gap or something else). It means my website URL load on click of app icon.
There are different ways to do that. Basically you have three ways (but there are more!) to consider:
Native universal HTML5/JS app: Create a native app using HTML5 and Javascript directly. There is a nice jumpstart available in the Microsoft Virtual Academy (MVA): http://www.microsoftvirtualacademy.com/training-courses/developing-universal-windows-apps-with-html-and-javascript-jump-start
WebView in a C# app: You can also add a WebView to a C# app and run your code inside a browser. This is done quite often - especially if developers want to port a web app very quickly to Windows Phone since all you have to do is to adjust your paths and you're good to go. There's a video on Channel9 by Bob Tabor: http://channel9.msdn.com/Series/Windows-Phone-8-1-Development-for-Absolute-Beginners/Part-13-Working-with-the-Web-View-App-Template (This video is part of another MVA course: WP 8.1 app development for absolute beginners)
3rd party frameworks: You can use third party libraries like PhoneGap / Cordova to run your code. This is very much like 2. as your code is also executed in a browser. The advantage is that you can easily deploy your code on other platforms but you might run into performance issues under certain circumstances.
So if you want to load your page if you click on your app icon (2) might be your best shot.
For Windows 10 Universal Apps you can do that very easily using the Microsoft project Westminster:
https://dev.windows.com/en-us/uwp-bridges/web-apps
Step by step guide is here:
http://microsoftedge.github.io/WebAppsDocs/en-US/win10/CreateHWA.htm
It takes about five minutes to make the app, and then maybe a few hours to polish it, make the right icons from the Windows store etc.

Can we package our existing HTML5 JS App for Windows 8

I have read some posts on S/O and also around the web. We are producing a HTML5 JS based web app that runs on the web. We are packaging it up for Google apps, and also for phonegap.
Can we package this app for windows 8? Of course, I appreciate it won't use the windows 8 features. But, will the app run none the less, as it stands. So that we can place it in the store and build out windows 8 features as we move forward.
I appreciate this is a slightly non-concise question, but I guess the real point is what is our quickest route to take our existing HTML 5, CSS, JS App and deploy it in the store and get it working on this platform.
In general, the answer is yes. The transition is not seamless, but you will be able to use a ton, if not all, of the application artifacts in Win8. A good test is if you can run it in IE10, you can run the app as a Win8 app. Again, this is a very broad brush - things you need to worry about are things like all scripts files need to be local (no CDN), changes to web and security contexts, and the fact that Win8 is a horizontal paradigm whereas most web apps are vertical. But in general, you should be able to make the move. Usual caveat - your mileage will vary.
Yes, although not recommended, you can package your existing app for Win8. You'll need to add a few bits of code though. The minimum would be to embed your app's start/init code within WinJS's first promise callback, like so:
args.setPromise(WinJS.UI.processAll().then(function () {
// your init code
}
You'll also need to create a couple of icons for the start screen and an image for your app's launch screen.
It is possible that you'll run into a few issues, like some security related restrictions, where you'll have to modify your code to use some native WinJS functions. This all depends on you app's implementation.
You can also check Microsoft's guidelines for migrating a web app to win8, here: http://msdn.microsoft.com/en-us/library/windows/apps/hh465143

Desktop Application upon Gecko/Mozilla or WebKit

How can I develop an installable desktop application on top of the Mozilla Engine or the Webkit engine.
We want to have best of both worlds, ease of development with DOM+Javascript+RenderingEngine+ContinuedImprovements in a Browser and user's control as in a desktop app
I looked at using C++ XPCOM for Mozilla but it seems to be quite complicated, Is there any other way to code like a WebApp using Javascript but burn it into the browser and dress it to give a feel of a desktop app. Also I require that javascript is compiled into native so that one cannot sneak into the source code
Are there any examples of desktop applications done this way ?
Web apps are fine but there are concerns of piracy, privacy, security and version control. The moot point is that in a web app the control lies with the software vendor, moreover the data is also with the vendor. Not only these, any changes to the application may also necessitate another around of training. What we want is that once the customer buys a version he is sure of what he owns and that he is in total control of it and we as software developer do not exposed our source code.
The issue is we have expertise in Web App development and we want to utilize that to develop a Desktop App
Your last point is that :
The issue is we have expertise in Web App development and we want to utilize that to develop a Desktop App
Well then BowLine can be an option though it requires Ruby, so you need to consider that. You can also take a look at WebKitDotNet if you are with .net Background.
Use XUL for the user interface and code your functions using JavaScript. You problably only need C++ to expose native functionality not yet available in Gecko. Examples of software that works this way: Komodo IDE, Songbird, Firefox and Thunderbird.

"Installable" web-app with Adobe Air?

I have a website that would ideally be accessed by users who have downloaded and installed it as "software"... I know i can create an "Application Shortcut" in Google Chrome to allow me to access my web-app in a window that does not resemble a web-browser (i love this by the way and it would work perfectly if it did not require a full install of Chrome). The problem is that i am not sure of a way to re-distribute GoogleChrome with a pre-configured application shortcut like this. I have also read a bit about Mozilla Prism which seems similar. After reading over some options, it looks like AdobeAIR is my best bet. I have not yet worked with it, but it looks like I can create a downloadable executable that will contain a web-based interface. This seems ideal, but all the documentation i have read thus far seems to make it sound like all the resources need to be locally included within the distribution. Can i just create an "empty" AdobeAIR frame that contains my live (server) website? Having never worked with AIR, is this reasonably easy to do (just a matter of setting up an iframe or something)? I do not want any content stored locally on teh user's computer, as it is a constantly changing data set.
AIR has badge installation option, and you can author content in js for it. There is also full-featured browser control in AIR (webkit-based), so it seems AIR has everything you need.

Getting started with Sencha Touch

I'm an Ext veteran but have a few rather simple mobile apps i need to create and naturally i'm looking at sencha touch. Ting is - most of the examples don't run up in Firefox/Opera.
I'm happily using Monodevelop as my IDE - this will have an Asp.NET backend - but can't even get the most basic setup working with ST....
What does everyone use for their development setups? How do you debug your apps?
I'm working in a vaguely similar scenario, and I mostly go for Google Chrome's Developer Tools or sometimes Safari developer tools, that's far from perfect but at least something.
However, I often try to isolate out problems not directly tied to the interface and then go back and solve them with Firefox/Firebug, which I find the absolutely superior development environment. It's often more than you think, especially if you're experienced with TDD. Try QUnit, for example ( http://docs.jquery.com/QUnit ).
It's probably possible to use Apple's developer tools (XCode/Dashcode or whatever..) for a more ergonomic experience, but I still can't be bothered.
(Here's to hoping for more compatible mobile web frameworks! I want my Firebug!)
They have explicitly stated that Sencha Touch only works on Web-kit browsers, namely Chrome and Safari
I am using VS 2008 SP1 with a large solution in TFS with a web application that hosts the JSON WCF services and Sencha Touch clients for iPad, iPhone and more. I have it working with WCF and am still learning myself. I admit it was quite a bear to learn, but things are starting to work. I have lists sizing to the client as expected too. The hardest part was the fact that Casini only hosts locally so we need to publish the web application to test with real iPads and iPhones. I also use Safari in OSX to help debug.
I sat around with Chrome, an iPhone and the Android emulator when I did my first one. I thought multi browser testing was bad normally but it's nothing compared to all the different Android versions, densities etc.
Chrome developer tools was the best I could manage on the PC though.
The best IDE I've come accross is Netbeans. Here's a guide to start you off :
http://techtalktone.wordpress.com/2012/02/22/using-netbeans-ide-with-sencha-touch/
The browsers you can test it on are : Safari, Chrome
The OS's on which it works : Android, iOS, BB6+
Hope this helps
Cheers :)