Firefox скомпилировали в WebAssembly и запустили внутри Chrome
Компания 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
Комментарии
Войдите, чтобы комментировать.