Published: | Updated:
Subscribe: RSS Feed Atom Feed JSON Feed

Testing my site on obscure browsers - Part 1 - Litebrowser

litehtml - a lightweight HTML rendering engine

Figure 1. litehtml - a lightweight HTML rendering engine

Even though the web has consolidated around a few browsers, there is still active development for web rendering engines that aren't some derivation of Gecko/Blink/Webkit. These rendering engines tend to be developed for special purpose use cases, and oftentimes focus on rendering HTML/CSS content as opposed to being used for general purpose browsing. Litehtml is one example, developed for easy embedding and low resource usage when you just need to render some HTML content. For demonstration purposes, the litehtml repo also includes source code for a minimal testing browser, called Litebrowser, that uses the litehtml rendering engine and can browse the web. I downloaded a copy of the source code, compiled the browser, and tested it out on my site to see how well the backwards compatibility overhaul of my site went.

The home page works pretty well, the gradient is gone, there is no snowfall (litehtml doesn't support JS), gifs aren't animated, and the body text isn't aligned to the center of the screen, but otherwise it is usable and readable.

Yukinu home page in litebrowser

Figure 2. Yukinu home page in litebrowser

The blog page is not too bad also, same issues as above but still usable and readable.

Yukinu blog page in litebrowser

Figure 3. Yukinu blog page in litebrowser

Litehtml supports png, jpeg, and gif, so you can read the Ubunchu pages I posted in this browser. 2 things to notice in these screenshots:

1. The snow and cabin decorations are gone, they get stuck at a fixed position when the page renders (more visible in a later screenshot).

2. The media query works properly for smaller viewports.

Ubunchu cover in litebrowser

Figure 4. Ubunchu cover in litebrowser

Ubunchu page in litebrowser

Figure 5. Ubunchu page in litebrowser

The webring also "works", none of the gifs are animated and the placement is all over the place, but you can still see the banners for the most part and click them.

Webring page in litebrowser

Figure 6. Webring page in litebrowser

And here is a page with the misplaced decorations. The decorations cover up some of the text, but it can be worked around by resizing the screen to have the text reflow.

Webring traversal article on litehtml

Figure 7. Webring traversal article on litehtml

Summary

Its good to see that my site works reasonably well with obscure and less well-known browsers like litebrowser. Litebrowser has a very small memory footprint and is great when you just need to render some basic HTML. The browser takes <10 MB of RAM to run, and opening a page on my site only took a few more MB of RAM. But before you try using this browser as a daily driver, I did experience either a memory leak or excess memory use from a cache. I was able to make litebrowser take up 1 GB of RAM by reloading the same page over and over again.