views:

421

answers:

12

I generally build web based applications. But, there is sometimes a need to distribute these applications to various platforms and have them act more like regular applications than web apps. A quick solution might be to create an icon that opens the browser with no menu, url bar, or icons.

It looks like IE might have some options for this. My searches for Firefox haven't turned up much. I'd like my solution to work in Windows, Linux, and on the Mac. And I don't mind building different solutions for each platform.

One thought, build a tiny XULRunner app that is just a browser window. But, XULRunner has a 10MB download size. When the user probably already has a browser, that seems excessive. Another option might be just an installer that creates an icon and a link to the browser with the URL in it. This would work, but doesn't make the web app look like a normal application.

What are your thoughts on how to deploy a web app that looks more like a regular app on multiple platforms?

A: 

There's the Prism add-on for FireFox and Google Chrome has this functionality built-in.

chadmyers
A: 

If you are using java you could use a lightweight servlet container such as Winstone. For example of Winstone's use check out how easy it is to use the Hudson continuous integration server.

johnstok
The Hudson link is broken.
Kyle Burton
Fixed the link to hudson.
johnstok
+1  A: 

There is Google Gears designed specifically to do this. It however only works on windows for the time being but it is intended to be ported to Linux/Mac although no current planned release date.

William
+1  A: 

I am not sure of your specific needs, but from a .NET side of things, you could create an app that houses the Browser Control and simply navigate to your web app by default, and don't include any navigation options!

That would get you what you want, which is a browser with no menus etc, the footprint would be small as well.

Mitchel Sellers
A: 

You can use Google gears to offer the user the option to create a desktop shortcut. Remember the milk does it.

johnstok
A: 

first of all you need to host the web app, buy a space (www.discountasp.net for .NET is wonderful) then use for example Prism that will work under Linux, Mac and Windows.

Remember, the client always need a connection to the web unless you have the application running under Google Gears witch everything is stored locally and can be used without a web connection, be advised that for this, you need to change several things in your code. You can start Google Gears using this link. :)

balexandre
A: 

We are considering and have already prototyped using a virtual machine for this. The VM will be linux with tomcat and oracle. We will likely also use the firefox installed within linux to control that aspect as well. The user will see the browser interface that they are used to, but via the VM. The application structure is the same as what we deploy to our intranet servers, but the implementation is completely mobile and self contained.

dacracot
+2  A: 

Adobe AIR is supposed to support Linux Real Soon Now™. Getting basic browser-like functionality is pretty trivial, but its Webkit implementation isn't exactly perfect.

eyelidlessness
A: 

If your web app is just a standalone HTML page with Javascript, you can just save the page to their system and change the extension from .HTML to .HTA

More info about HTML Applications here: http://msdn.microsoft.com/en-us/library/ms536496(VS.85).aspx

Hope this helps.

BoltBait
A: 

I tackled this question myself for ASP.NET web applications and put together a prototype that's a combination web server/web browser. It's certainly not cross-platform and really targeted at Windows/.NET, but is another option to look at.

J Wynia
A: 

You need to be a little more specific about the type of 'web app' you're developing, and your intended target platform and audience. That will, for a large part, determine what technology you can use.

If you're developing in java, you could bundle jetty with an app, and just tell the user 'point your browser to http://localhost:8080/whatever.

tunaranch
+1  A: 

Prism for Firefox does this. Fluid is a Mac equivalent that creates a standalone application container around the WebKit framework. It's nice, but also has a pretty heavy (10MB) footprint. That compresses to about 3MB as a zip, but I've never tested the portability of Fluid-generated apps.

RET