Soie is a web engine written from scratch in plain C99: HTML, CSS, JavaScript and video in about 46,000 lines of code. It fits in a 700 KB download, runs on the 32-bit PCs every big browser has left behind, and leaves the memory of new machines to the work that matters.
Free software, BSD licence. Made for and by SliTaz.
SliTaz has always run on old machines. In ten years the web engines we relied on left those machines, one after the other. These are the facts, with their sources.
Google ends Chrome for 32-bit Linux: no more updates, no more security fixes. chromium-dev announcement
WebKitGTK 2.4.11 comes out. It is still the WebKit in the SliTaz packages today: no release of its series has come since, and the newer ones do not build on our tool chain. webkitgtk.org
Firefox ends Linux support for processors older than the Pentium 4 and the AMD Opteron (SSE2): a Pentium III or an Athlon XP no longer starts it. Mozilla support
WebKit raises its compiler requirement to GCC 11.2, to build with C++23. A small distribution has to change its whole tool chain just to follow one library. WebKit bug 275507
Mozilla ends 32-bit x86 Linux with Firefox 144. Firefox ESR 140 keeps getting security updates "until at least September 2026". Mozilla blog
So we wrote our own engine, one a single person can read from end to end, built with the compilers SliTaz has, for the machines SliTaz runs on. It does not try to be Firefox: it tries to show the web as it is, with little.
There is a second reason. A browser that needs half a gigabyte to show a page takes that memory from everything else, and today everything else includes the AI models people want to run on their own machine. A light engine is not only for old PCs.
The same pages, opened in xsoie 0.1.0 and Firefox 153 ESR, on the same machine, each in a fresh window, scripts on.
Averages over the six pages below.
| Page | Memory | CPU | Ready |
|---|---|---|---|
| www.slitaz.org | 17 / 605 MB | 0.09 / 3.83 s | 0.5 / 6.5 s |
| Wikipedia, Linux | 48 / 663 MB | 1.51 / 4.91 s | 2.7 / 8.9 s |
| Hacker News | 16 / 614 MB | 0.11 / 4.06 s | 1.6 / 8.9 s |
| LWN.net | 16 / 608 MB | 0.12 / 4.16 s | 1.4 / 8.9 s |
| MDN, CSS | 22 / 633 MB | 0.25 / 4.69 s | 1.7 / 8.9 s |
| GitHub, torvalds/linux | 79 / 779 MB | 1.27 / 6.79 s | 2.2 / 10.4 s |
In each cell, Soie / Firefox.
Measured with tools/browser-bench.sh from the Soie
sources, October 2026, on an Intel i7-13700H under SliTaz
x86_64: median of 3 runs, live sites. Memory is the PSS of the
browser's processes at their peak (shared pages counted once),
CPU the processor time they used, ready the time until the page
stopped working.
Screenshots of the same 1024×768 view, taken the same minute. The fonts differ (Soie uses DejaVu, as SliTaz does), the layout is the page's.




Wikipedia content under CC BY-SA.


MDN content under CC BY-SA. Some of MDN's top bar controls are still missing in Soie.
One engine, a few extensions, small browsers: each piece does one thing, and every choice is written down in DECISIONS.md.
The engine. HTML parsed the way the WHATWG says (it passes the html5lib tree tests), the CSS cascade (it passes css-parsing-tests), blocks, inline text, tables, flexbox, grid, SVG, painted with FreeType and HarfBuzz. Restyle and layout are incremental: a page that changes costs what changed.
What a browser needs beyond the engine, each a small module: cookies, content blocking, WebP, JavaScript with QuickJS (DOM, fetch, workers), and audio and video with FFmpeg, Media Source Extensions included: YouTube plays.
xsoie for X11 and wsoie for Wayland, for the lightest systems; SoieView, a GTK 3 widget, for Toile, the SliTaz desktop browser.
Two outside audits before this release, one for speed, one for security; the tests run under AddressSanitizer and on real sites; random changes to pages are checked against a fresh layout.
Plain C99, a plain Makefile, no toolkit in the engine, no
code generator, no build system to learn: make
and it builds, on old compilers too.
BSD licence. A C API to embed the engine (soie.h),
an ABI for extensions (ext.h), and a headless
renderer, soie-render, for tests and
screenshots.
On SliTaz, the lightest way to browse the web:
spk-add xsoie
Soie comes in packages, so that a system installs only what it needs:
| Package | What it holds |
|---|---|
| soie | the engine, with cookies, content blocking, WebP and JavaScript |
| xsoie | the X11 browser |
| wsoie | the Wayland browser (x86_64) |
| soie-gtk | SoieView, the GTK 3 widget Toile uses |
| soie-media | audio and video, with FFmpeg and ALSA |
| soie-dev | headers, static library, pkg-config files, soie-render |
From the sources, on any GNU/Linux with a C99 compiler, GNU make, pkg-config, FreeType, HarfBuzz, libpng and libjpeg (the browsers also want Xlib or Wayland, GnuTLS and zlib; the extensions libwebp, FFmpeg and ALSA, and QuickJS 2026-06-04):
wget https://hg.slitaz.org/soie/archive/0.1.1.tar.gz
tar xzf 0.1.1.tar.gz && cd soie-0.1.1
make && make check
make install PREFIX=/usr
The README tells the rest; the history is in the Mercurial repository.
Soie is young, and we would rather say it here than let you find out:
:hover or :focus styles.Bugs and ideas are welcome on the SliTaz forum.