Premus

“The name Premus comes from PRoxying EMUlator Service. It is a mobile browser emulator that converts WML, XHTML MP, cHTML and Vodafone’s PML (c. 2004) into standard HTML that you can browse in your normal web browser.”

This is what David Johansson says on the site as a short description of the software. David has been developing mobile services for many years now and he was among the early supporters of WURFL.

Premus was born from the need of testing mobile sites, WML in WAP 1 in the beginning and later many more markups. I would not call it exacly an “emulator” as David does, but rather a testing tool. In two words, Premus lets you pick a user-agent (from WURFL, of course!), define a URL and specify extra headers, if you’d like. The software makes the request and reformats the markup so that it renders well in your web browser. It’s not a Java application or applet, it’s not a real emulation engine or and SDK. It’s a web-based tool that lets you easily test your sites and make sure that all the links work and the pages look as you expect.
You should not expect a faithful representation of how it will look on the mobile device; it does not show alerts if you picked the user-agent of a WML device/browser and the remote site returns XHTML. It is intended for programmers and authors that have developed a site or a complex service and need to check that everything is OK.

Since real device testing is ALWAYS suggested, this is the perfect light-weight tool to make a general test before going with the mobile.

More in detail, while browsing with Premus, you always see the general page layout, but you can also see the original source, you see, edit and force cookies and headers. By default you have a some input fields on the top of the page for the user-agent, URL and manage all the proxy features and see the page in a dedicated box. De-activating the “frame” checkbox you can see the page layout in a window on its own, more similar to the mobile browsing.
A very helpful feature is actually on the bottom of the page. It shows a list of external resources (normally images) and the size of each. Also provides the time needed to download the markup and all external contents. The time is calculated on the fast internet connection of the server, not calculating the mobile networks latency, but will be useful to compare different pages and sites.

Premus will help you save a lot of time.

Premus is now released as open-source so you are free to download and adapt it to your needs.
If you look at the version in development you will see some new features that are not in the online demo, yet. These are features that I have strongly suggested to David and actually it really took him a few hours to implement them, but I think they will make a big difference.
Syntax highlighting has been added for the source view, very useful when you need to check your markup. Also the spacing has been changed for better readability.
Even more important to me is the markup validation. It’s disappointing when you build a big site, get ready to test with your mobile (take it from the drawer, put the correct SIM card, check the WAP profile, go online) and discover there’s a typo in the XML declaration. Checking that your markup is validated will certainly guarantee the best interoperability with all browsers. When you want the best possible support you really want this. Well-formedness is the first thing! Look what happens if you validate http://m.gmail.com/ :

Premus validation resulf for mobile Gmail
All the code is Python and should be easy to install on most modern Linux disto’s.

Some other minor things could be cleaned up and improved. Nevertheless this is a very good testing tool. If you are a mobile sites developer, I suggest you try it out, especially the development version that adds those 2-3 features that will actually ease your work a lot.