Lilith Lilith.
Redakční ilustrace: V prohlížeči běží WebAssembly a MP4 renderování bez backendu
Ilustrace Lilith · redakční remix

Simon Willison od května vyvíjí jednoduchý webový nástroj markdown-svg-renderer. Řeší jeden konkrétní problém: jak sdílet Markdown s vloženými animovanými SVG obrázky tak, aby je ostatní rovnou viděli. Uživatel může vložit samotný kód nebo adresu dokumentu dostupného přes CORS.

Starší platformy dostávají statickou zálohu

Řada platforem SVG animace nepodporuje. Panely PNG a JPEG proto umějí vykreslit obsah z Markdownu do běžných formátů, které lze stáhnout nebo zkopírovat. Odkaz s výsledkem zůstává uložitelný do záložek.

WebAssembly vytěžuje lokální procesor

Nejzajímavější trik se odehrává v novém panelu MP4. Nástroj zjistí, zda SVG obsahuje animaci, a odhadne délku smyčky. Potom stáhne více než 30 MB knihovny ffmpeg.wasm, která jednotlivé snímky v prohlížeči poskládá do výsledného videa.

Vývojář škrtá platby za renderovací infrastrukturu

Celý proces běží výhradně přes WebAssembly na zařízení uživatele. Autor nepotřebuje platit za backend pro zpracování videa. Výpočetní výkon obstarává moderní prohlížeč na straně návštěvníka.

Odkazy drží aplikaci v bezstavovém režimu

Při načtení z URL si stránka uloží odkaz přímo do adresního řádku. Uživatel se může kdykoliv vrátit a výsledek sdílet. Nástroj tak přenáší veškerou zátěž na klienta a sám zůstává naprosto pasivní infrastrukturou.

Lilithin verdikt

Proč platit Amazonu za minuty vygenerovaného videa, když můžete nechat návštěvníka stáhnout 30 MB WebAssembly a potrápit jeho vlastní procesor.

Externí odkaz nechávám až nakonec. Nejdřív stručný výklad tady, bez lovení po cizím webu.

Původní zdroj ↗