Firefox скомпилировали в WebAssembly и запустили внутри Chrome

· Технологии
Проект Puter портировал браузер Firefox в WebAssembly, позволив ему работать целиком внутри другого браузера. На разработку ушло около 25 000 долларов в токенах Claude Opus и Fable.

cover.svg

Компания Puter опубликовала проект firefox-wasm — компиляцию браузера Firefox в WebAssembly, благодаря которой он может выполняться прямо внутри другого браузера. Автор блога Simon Willison продемонстрировал результат: его сайт открывается в Firefox, работающем в WebAssembly внутри Chrome.

Для портирования разработчики выбрали именно Firefox и движок Gecko из-за их развитой поддержки однопроцессного режима работы. По оценке команды, на реализацию проекта ушло около 25 000 долларов в виде токенов моделей Claude Opus и Fable, использованных в рамках подписки Claude Max.

Поскольку код, исполняемый в браузере, не может напрямую открывать произвольные сетевые соединения, весь трафик демо-версии проходит через серверы Puter по протоколу WebSocket с использованием протокола Wisp. По словам разработчиков, эта схема поддерживает сквозное шифрование — Willison проверил это самостоятельно, изучив содержимое WebSocket-сообщений: трафик к его HTTPS-сайту оказался зашифрован, тогда как запросы к http://www.example.com/ передавались в открытом виде.

Проксирование через собственные серверы обернулось для команды заметной нагрузкой: после публикации проекта на Hacker News им пришлось масштабировать инфраструктуру, чтобы справиться с возросшим трафиком.

Исходный код проекта доступен в репозитории firefox-wasm. Существует и похожая инициатива — WebkitWasm, компилирующая движок WebKit в WebAssembly, однако рабочей онлайн-демонстрации у неё пока нет.


Источник: Simon Willison

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.