Webブラウザ上でNode.js環境を実現する「WebContainer」、iOS/iPadOS版Safariに対応。iPhone/iPadでWeb開発環境が起動

今回は「Webブラウザ上でNode.js環境を実現する「WebContainer」、iOS/iPadOS版Safariに対応。iPhone/iPadでWeb開発環境が起動」についてご紹介します。

関連ワード (利用、困難、見分等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


WebAssemblyを用いてWebブラウザ上でNode.js環境を実現する「WebContainer」などを提供するStackBlitzは、WebContainerがiOS/iPadOS 16.4以降のSafariに対応したことを明らかにしました。

iPhoneやiPad上のSafari上で、Node.jsをベースとしたWeb開発環境が起動することになります。

Big news: WebContainers are now supported on Safari, iOS and iPadOS!https://t.co/6SfOUDn4z2 pic.twitter.com/9PykipdNxJ

— StackBlitz (@stackblitz) April 27, 2023

WebContainerはStackBlitzが開発し提供している、Webブラウザ上で実現されるWebAssemblyベースのNode.js環境です(名前に「Container」と付いていますが。Dockerなどのコンテナ技術とは関係ありません)。

Node.jsが備えるJavaScriptランタイムの機能とHTTPサーバの機能などがWebブラウザ上で提供されるため、外部のサーバに依存することなく、Webブラウザ上でnpmによるNode.jsベースのツールチェーンの実行や、Webアプリケーションの開発、テスト、実行などが実現できます。

例えばサーバサイドレンダリングのためのフレームワークであるNext.jsの実行や、GraphQLの実装などがWebブラウザ上で可能だと説明されています。

Webブラウザ上の開発環境はサーバと見分けが付かなくなっていく

これまでWebContainerは、WindowsおよびMacのChromeブラウザ、Firefox(β対応)、Safari(β対応)、Android上のChomeブラウザ(β対応)で実行可能でした。

iOS/iPad OSのSafariについては、過去のバージョンのSafariがJavaScriptの「SharedArrayBuffer」に対応していなかったこと、スタックトレースが他のブラウザ実装と異なること、メモリアロケーションの制限が厳しく、メモリリークのバグも一部で発生することなどから、これまでWebContainerの実行が困難だと説明されていました。

しかしその後iOS/iPadOSのSafariにもSharedArrayBufferが実装され、WebContainer側でも異なるブラウザ実装での解決策を講じ、メモリリークのバグについてはiOS/iPadOSを検知すると別ドメインにリダイレクト後に元のページに戻るという回避策などを組み込み、WebKitの開発者によるバグの解決などの協力も得た結果、iOS/iPadOS 16.4以降のSafariではWebContainerが実行可能となりました。

実際に手元のiPadで試したところ、問題なくWebContainerが起動しました。

fig

WebContainerはStackBlitzのプロダクトとして提供されていますが、個人利用やGitHub上でのパブリックリポジトリを利用した開発は無料となっています。

StackBlitzは2月にWebContainerのAPIも提供を開始しています。Web技術の進化によって、Webブラウザ上で構築される開発環境は、サーバ上で構築されるそれとどんどん見分けが付かなくなっていくようです。

参考:Webブラウザ上でWebAssemblyベースのNode.js環境を実現する「WebContainer」がAPI提供開始。ブラウザ内ファイルシステム、HTTPサーバ、Node.js CLIなど

COMMENTS


Recommended

TITLE
CATEGORY
DATE
AWSの次期CEOが決定–初期の幹部でTableau現CEOのセリプスキー氏
IT関連
2021-03-24 23:47
マテリアルデザインを簡潔に記述できる「Jetpack Compose」がバージョン1.0に到達、本番環境で安心して利用可能に
Android
2021-08-04 01:13
「デスカムトゥルー」「ワールズエンドクラブ」のイザナギゲームズが1.6億円を資金調達
ゲーム / eSports
2021-01-26 04:49
Google、倫理的AIチームに代わる新チームとその黒人女性リーダーを発表
製品動向
2021-02-20 20:57
アプリケーション開発における最適な手法の選び方–後編
IT関連
2023-01-19 08:17
ローソン、Uber Eatsで医薬品を配送 国内初
最近の注目ニュース
2021-02-03 17:36
第2回:従来型データ統合戦略の落とし穴
IT関連
2021-02-09 03:28
NTT、モバイル6Gの実証に向けた連携体制を構築
IT関連
2022-06-08 11:54
元Googleのエンジニアによる自動運転ロボットがマイアミで料理配達業務を開始
ロボティクス
2021-04-05 06:03
ソフトバンク、次世代電池の性能検証施設を開設へ 統一環境でのテストで開発支援
企業・業界動向
2021-03-16 01:03
ホームフィットネスPelotonがアップルの「GymKit」との統合に懸念を表明
ヘルステック
2021-04-19 16:29
「Linux」マルウェア「OrBit」発見–検出、削除が難しい新種
IT関連
2022-07-12 09:19
企業はWindows 11をどう受け止めるべきか
IT関連
2021-07-01 00:44
日立と山形県東根市、洪水の事前予測で避難・緊急活動への効果を実証
IT関連
2022-12-21 17:46