Megjelent a FixBrowser webböngésző első tesztkiadása, amelyet alacsony erőforrás-felhasználásra és adatvédelemre terveztek. A böngésző a nulláról fejlődik, és alapvetően nem támogatja a JavaScript futtatását, de lehetővé teszi a JavaScript-re épülő weboldalak használatát. A kód C és FixScript nyelveken készült, és ZLIB licenc alatt terjesztik. A kész összesítések Linuxra (GTK2) és Windowsra érhetők el. Tervezik a Haiku és a macOS 10.6+ verziókhoz készült összesítések elkészítését, valamint GTK3/4-et használó Linux-összesítések fejlesztését.
A JavaScript-re épülő weboldalak megjelenítéséhez a FixBrowser egy FixProxy réteget használ, amely valós időben alakítja át az ilyen weboldalakat olyan formára, amellyel JavaScript nélkül is lehet dolgozni. Az átalakítás tipikus sablonok alapján, vagy fix-feldolgozók segítségével történik, figyelembe véve a konkrét weboldalak sajátosságait (a csomagban több mint 1200 weboldalhoz tartozó fix-feldolgozó található). A FixProxy külön proxy-folyamatként fejlődik, amely nincs összekapcsolva a FixBrowser-rel, így más böngészőkkel is használható.
Megjegyzik, hogy a legtöbb weboldal JavaScript nélküli megjelenítéséhez csupán kisebb módosítások szükségesek. Ezenkívül sok weboldalon azonos típusú technológiákat használnak a tartalom dinamikus generálásához, ami lehetővé teszi a tipikus fix-feldolgozók alkalmazását a megjelenítéshez. Például univerzális fix-feldolgozók használhatók WordPress motoron alapuló weboldalakhoz és Disqus platformon működő fórumokhoz. Feldolgozók készítése lehetséges olyan weboldalakhoz is, amelyek dinamikusan renderelik a tartalmat — például a JavaScript segítségével dinamikusan betöltött kommentárok listájának megjelenítésekor a fix-feldolgozó közvetlenül betölti az adatokat JSON formátumban, és magának kell HTML-t generálnia ezek alapján.
A captcha és JavaScript összetevők, például a CloudFlare ellenőrzések kezelésére, amelyek nélkül bizonyos weboldalakra való belépés lehetetlen, tervezik egy CEF (Chromium Embedded Framework) keretrendszer alapú réteg előkészítését, amely képes lesz hatékonyan végrehajtani csak a szükséges JavaScript-kódot. A JavaScript réteget külön szolgáltatás formájában valósítják meg (indítható saját rendszeren, vagy használható a nyilvános felhőszolgáltatással is).
A felhasználói aktivitás nyomon követésének blokkolásához a külső hosztokról történő erőforrások betöltése le van tiltva, míg a tartalomképek CDN-en keresztüli betöltéséhez fehérlistát alkalmaznak. HTTPS támogatott. Lehetséges FixScript nyelven írt bővítmények csatlakoztatása.
A projektet Martin Dvorak, a cseh FixScript programnyelv megalkotója fejleszti. A FixBrowser kódjának nagy része FixScript nyelven íródott, kivéve a teljesítmény szempontjából kritikus műveleteket és az alap keretrendszert. A FixScript kód C kódba ágyazódik, és az összeállításhoz egy fájlban biztosított fordítót használnak, amely körülbelül 27 ezer sor C kódot (800 KB) tartalmaz. A nyelv hasonlít a C-re, de dinamikus típuskezelést, szemétgyűjtőt és JIT fordítást alkalmaz. A FixBrowser biztosítja a biztonságos memória- és szálkezelést, valamint beépített védelmet nyújt egész szám túlcsordulások ellen.
A böngészőmotor megvalósítása jelentősen egyszerűsödött, mivel a FixBrowser csak az elsődleges megjelenítést végzi, és nem támogatja a tartalom dinamikus frissítését. Miután a lap megjelenik, az nem változik, így elkerülhetők olyan elvont fogalmak, mint a DOM (Document Object Model). Jelenleg a munka az HTML5 specifikációkat támogató HTML-parser kialakítására összpontosít. Az első tesztkiadásban javasolt megvalósítás jelenleg csak a HTML5 tesztek 30%-át fedi le. Alap CSS támogatás is megvalósult.

Forrás: opennet.ru
