Sans Browser

Archives Posts

XAPGen for Xcode

September 10th, 2007 by enefekt

I’ve put together an Xcode project template for XAPGen. So if you have the Xcode development tools, just download, unzip, and drop the files packaged up below in the right spot, and you’re ready to rock.

After setup, in Xcode just go to File->New Project, and choose XUL->XAPGen. You have an instant XULRunner project directory ready to build. Just choose the build-and-run target, click “Build”, and you’ll see the default Hello World app get packaged up and launched all automatically.

And of course, the build-all target will build Windows and Linux distributions as well!

When naming your new project name, remember to use all lowercase.

XAPGen for Xcode

Filed under IDA, Mac, Mozpad, XAPGen, XULRunner having 2 Comments »

Archives Posts

XUL Dark Matter Series: TabPress

September 4th, 2007 by enefekt


I have been working on an authoring tool code-named TabPress. This is being built on XULRunner and is meant to be a relatively simple tool to create small learning objects delivered in a tab container.

I am experimenting with a different way of editing structured/complex content utilizing the editor and overloaded images. So far it’s working decently, but I need to conduct some more usability tests to flesh things out further.

Some quick points about the app:

  • Uses XSLT for publishing
  • Publishes content using YUI components
  • Opt-in Creative Commons licensing
  • Streamlined SWF insertion
  • Streamlined MP3 player insertion

It’s in an alpha state without any user documentation at the moment. Feel free to play around with it though and see whats discoverable. Just wanted to get this early version out there and make sure it doesn’t end up as dark matter. :)

Now at 0.3, there has been some bug fixes, enhancements with visual editing capabilities and support for themes when publishing.

TabPress 0.3 – Mac UB (20.4 MB)

TabPress 0.3 – Win (7.6 MB)

Filed under Mozilla, Mozpad, XULRunner, XULRunnerApp having Comments Off

Archives Posts

WebRunner:Instant AIR Competitor

August 29th, 2007 by enefekt

I’ve been trying my best to try and figure out the current landscape of technology offerings for RIA and IDA development. So forgive me for this rant-ish post, and correct me or help me where I’m just dead wrong.

I believe in choosing the right technology for a project’s or product’s requirements. Some of the projects I work on are obviously web applications, so I target the browser and either use HTML/JavaScript for simple interfaces, or Flex/ActionScript for advanced interfaces or rich media integration.

But we’ve frequently found ourselves in the position of needing to create relatively light-weight desktop applications with advanced UI requirements, that can easily work with web technologies.

Building these IDAs with client technologies like Flash/Flex/XUL/ECMAScript has been awesome in developing fast and good, and not having to code Swing layouts. This idea has pretty much been hackish at best in the past until XULRunner came along. But now AIR is here, and I’m trying to evaluate both. So this is the type of target I’m referring to with this post, Internet Desktop Applications with advanced interface requirements.

This post and chat transcript posted by Matt of AllPeers really kind of set off some alarm bells. Not gonna summarize it, so you may have to read it. But I’m replying to some thoughts presented in it.

HTML? Hyper-text Markup Language: Formatting text documents.

XUL? XML User Interface Language: Creating user interfaces

Merge XUL into HTML, gradually over time? Why? Use the best tool for the job! Leave HTML for what it does best, for documents. And talking about some future idea that may be cool (or the worst thing ever done), is not NOW. There are excellent tools and technologies available NOW that do these things (Flex, ActionScript 3, AIR)

What is WebRunner’s or Firefox 3’s interface developed in? XUL, not HTML. Maybe once we see Firefox shipping with an all HTML interface then I’ll be able to see HTML as some sort of capable user interface language.

If Mozilla’s own evangelists are encouraging HTML over XUL, then it would be downright foolish to champion it, and makes me uneasy choosing it to develop with.

So who is putting their weight behind a modern, advanced, rich, and internet friendly programming language and user interface markup language? Adobe, with Flex and ActionScript 3.

In more than one spot I have seen this evangelism of using HTML over XUL for developing rich applications, and wonder what is at it’s core. Maybe it is because the Mozilla Foundation/Corporation is unsure of the future API or compatibility and stability of using XUL and its companions. And they figure HTML is the safe way to go for the “masses”.

Again, who has the awesome history of distributing a runtime far and fast, proven backwards compatibility in a runtime, and is at the same time making great advancements with innovation for rich media, RIA, and internet desktop application developers? Adobe. With the Flash Player, and no doubt soon to come AIR.

I’m trying my best to find something to keep me hackin’ on XUL and JavaScript, but I keep seeing these confusing mixed signals as to the future of a capable RIA/IDA platform or runtime using Mozilla technologies. (Or no signals at all)

Don’t get me wrong, I love working with XUL, JavaScript, and XULRunner, and I have a number of projects using the technology. So I’ll be continuing to develop with it. But for new and future projects I’m gonna have give it some serious thought.

Filed under AIR, Adobe, IDA, Mozilla, Mozpad having 5 Comments »

Archives Posts

Super Add-Ons Possible!

August 23rd, 2007 by enefekt

Looks like my idea of Super Add-Ons might be possible with Firefox 3!

It appears its all experimental right now, but hey I’m not to proud to gobble up table scraps!

Some shortcomings to note right away:

  • Firefox prefs and commandline handlers are still in effect.
  • On Mac the dock icon will be Firefox
  • On Windows the shared taskbar icon will have the Firefox logo.

Let’s see what we can’t do.

Archives Posts

XAPGen 0.1 Alpha Release

July 20th, 2007 by enefekt

If you missed the announcement post, go and read that to get the low-down.

XAPGen is a project to provide tools to help automate the generation of XULRunner projects and packaging for distribution.

I now have a first release using Ant, and have done preliminary testing on Windows, Linux, and Mac.

First, you can generate brand-new XULRunner projects just by passing in an app/project name. Then you will have a project that is ready-to-go to package apps for Windows, Linux, and Mac.

Here’s what I used on the various platforms to get started:

  • Mac OS X: Xcode Tools and you’re up and running. You can create packages for all three major platforms
  • Linux: Java SDK, and Ant. You can create packages for all three major platforms
  • Windows: Cygwin, Java SDK, and Ant. You can create packages for Windows and Linux. (The Mac build relies on some UNIX tools not available in Cygwin)

There are also tasks for each platform: buildAndRunMac, buildAndRunWin, buildAndRunLinux. These will build and immediately run your app and open the Error console for debugging.

So this obviously isn’t for the projects building custom XULRunner binaries from the Moz source tree, but rather for devs using XULRunner as-is.

There is a lot of stuff that I would like to do to make this even better. And there are some really cool ways to extend this. Right now I thought I would get a tracer bullet out-the-door first. (One thing I know I want to do soon is optimize the buildAndRun tasks better)

So if you get a chance to play around with this, let me know what you think.

Check out the README file for the details.

Download: XAPGen 0.1a

Archives Posts


July 17th, 2007 by enefekt

I’ve been working on this project inspired by Mozpad named XAPGen:

XULRunner Application Project and Package Generator

XAPGen Logo

XAPGen is a project to provide tools to help automate the generation of XULRunner projects and packaging for distribution.

The project does not focus solely on one automation/build technology, but welcomes contributions and techniques using various technologies. This is to help XULRunner application development to be approachable to a wider audience coming from different backgrounds.

I’m really close to releasing an early version for wider testing, but am waiting to get my MacBook Pro back from getting a faulty display replaced to at least do some testing on Windows and Linux. :) The version I am working on right now uses Apache Ant.

I wanted to get out a heads up about this though before the Mozpad meeting. Here is an example of how simple it is to get started with a XULRunner app with XAPGen Ant:

Generate a project just by passing in an app name:

demo step 1

Package up your new app right away:

demo step 2

You now have packages for Mac, Windows, and Linux:

demo step 3

Filed under IDA, Mozilla, Mozpad, XULRunner having 1 Comment »

Archives Posts

XULExplorer 0.4 for Mac [Updated]

June 22nd, 2007 by enefekt

Since I noticed that Mark Finkle’s download slot for XULExplorer 0.4 for Mac was still labeled as “coming soon”, I figured I would whip up a Mac distribution. So I grabbed the source from Subversion and did just that.

Some things I got errors on:
I didn’t see a “tasksOverlay.dtd” file, so I just disabled those entities in “inspector.xul”.
There wasn’t a “venkman-overlay.dtd”, but I found one via Google and slammed that in there.

So I guess this isn’t an “official” distribution, there prolly is some stuff not 100% right. The app bundle directory arrangement might be a little different too, since I slapped the source into my own build process, and created the distribution from that.

Oh, and I used XULRunner, what I had laying around. I guess it’s not a UB. If I do this again, the next one will be. (Should still work fine on Mac Intel, will double-check when I get on my Macbook Pro later today)
Update: Works fine on Mac Intel, forgot that gives you a UB, will update this weekend sometime.
Update 2: Now a (fat) Universal Binary

Here it is:
XULExplorer 0.4 – Mac (Universal Binary – 19.2 MB)

Archives Posts

Neo-Desktop Applications and the Three Religions

June 21st, 2007 by enefekt

There are a couple great posts spawned by a post by Simon Morris on He talks about three flavors of RIA “religions”, Browserism, Neo-Desktopism, and Pragmatic Neo-Desktopism.

Shaking the gratuitous buzzwords and fictional religious names off, I think there is a lot of relevant material here for Mozpad.

Caught all this by way of Ryan’s post. Ryan makes an excellent point:

The browser is not going to replace desktop applications, it just won’t happen. So instead of focusing so much energy on trying to pull that off, the “Browserists” should engage with the “Neo-Desktopists” and come up with a very web-centric solution for deploying desktop applications.

This idea is what was behind my idea to merge the deployment, distribution, and update mechanisms that exist with Firefox Add-Ons, with XULRunner apps.

So is Mozilla a Browserist, and Mozpad a Neo-Desktopist? :) You decide, here are the definitions:

Browserism is the belief that the web browser (or comparable page-centric markup-orientated HTTP-bound middleware platform) is the future of end user facing software; a belief solely based on observation that the web is currently the predominant tool for accessing the internet. The goal of Browserism is to slowly evolve a common web platform to include the functionality traditional desktop applications have supported since the rise of the Micro Computer in the early Eighties. Browserists get very excited by user interfaces approximating desktop applications circa 1984 (”wow, you can drag the map!”) or functionality which reminds them of a Commodore 64 (”gee whiz, I can save data onto the computer’s disk itself!”)

Neo-Desktopism is the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac. The goal of Neo-Desktopism is to evolve traditional desktop application technologies (for Java, this would be Swing and AWT primarily, although also includes the JRE itself) to a point where they can float free of a physical local client installation, deploying on demand just like web pages. Neo-Desktopities get very excited when their Java WebStart applications actually start on a friend’s laptop first time, without having to spend ten minutes fiddling with their Java installation while gawking at an impossibly long stack trace.

Pragmatic Neo-Desktopism is the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac, but we’d all get fired if we admitted that to our bosses. Pragmatic Neo-Desktopities desperately want to write proper Neo-Dekstop software, but are conscious of the fact that the fashion amongst Dilbert-esque managers is for all software to launch from a URL. So they simply embed heavyweight technologies inside a web page, which, while acting totally without sympathy to the host environment, at least keeps the Dilbert-esque managers happy.

Filed under Adobe, IDA, Mozilla, Mozpad having Comments Off

Archives Posts

Songbird’s XULRunner Wishlist

June 21st, 2007 by enefekt

Songbird has posted their wishlist for XULRunner.

Filed under Mozpad, XULRunner having Comments Off

Archives Posts

Updated Mozpad Action Proposals

June 18th, 2007 by enefekt

I have updated and hopefully clarified a couple of the Mozpad action proposals that I’ve championed. You can either leave comments here or start a thread on the Mozpad groups list. The two that I’ve updated are:

Mark Finkle has already started on his Platform wish list.

Filed under Mozpad, XULRunner having Comments Off

« Previous Entries Next Entries »