AB
AiBoss
project

ScreenCoder - インテリジェントなUIスクリーンショットからフロントエンドコードを生成するためのオープンソースツール。

ScreenCoderは、オープンソースのインテリジェントなUIスクリーンショット・コード変換システムで、あらゆるデザインのスクリーンショットを、クリーンで編集可能なHTML/CSSコードに素早く変換できます。ScreenCoderは、モジュール式のマルチエージェントアーキテクチャと視覚理解を組み合わせています。

ScreenCoderとは何ですか?

ScreenCoderは、オープンソースのインテリジェントなUIスクリーンショット・コード変換システムです。あらゆるデザインのスクリーンショットを、クリーンで編集可能なHTML/CSSコードに素早く変換できます。ScreenCoderはモジュール式のマルチエージェントアーキテクチャを採用し、視覚理解、レイアウトプランニング、コード合成技術を組み合わせることで、高精度でセマンティックなフロントエンドコードを生成します。ユーザーはニーズに合わせてレイアウトやスタイルを簡単に変更でき、デザインと開発のシームレスな統合を実現します。迅速なプロトタイピングやピクセルパーフェクトなインターフェース構築に適しており、フロントエンド開発の効率を大幅に向上させます。

ScreenCoderの主な機能

  • UIのスクリーンショットをコードに変換UIのスクリーンショットやデザインプロトタイプを、クリーンで編集可能なHTML/CSSコードに素早く変換できます。
  • 高精度コード生成生成されたコードは、元の設計と非常に整合性が高く、視覚的にも整っており、意味論も忠実に再現している。
  • カスタム改造これにより、ユーザーはニーズに合わせてレイアウトやスタイルを調整でき、二次開発が容易になります。
  • マルチモデル対応Doubao、Qwen、GPT、Geminiなど、複数の生成モデルをサポートしており、ユーザーはニーズに応じて選択できます。
  • 迅速な展開生成されたコードは本番環境で直接使用でき、迅速なプロトタイピングとピクセルパーフェクトなインターフェース構築をサポートします。

ScreenCoderの技術原則

  • 接地剤フェーズローカライズ段階では、ビジュアル言語モデル(VLM)を使用して、サイドバー、ヘッダー、ナビゲーションバーなど、UI画像内の主要な構造コンポーネントを識別し、ラベル付けします。テキストプロンプトによってモデルが特定のコンポーネントを検出し、そのバウンディングボックスと意味ラベルを返します。検出結果の正確性と信頼性を確保するため、システムは重複排除、競合解決、ロールバック操作を実行し、メインコンテンツ領域を推論します。最後に、レイアウト辞書が出力され、後続のレイアウト計画とコード生成のための基礎情報を提供します。
  • プランニングエージェント計画段階では、位置決め段階の出力に基づいて階層的なレイアウトツリーが構築され、コード生成のための構造的なコンテキストが提供されます。検出されたコンポーネントは、単純な空間ヒューリスティックと構成ルールを使用してツリー構造に整理されます。システムは、ビューポートを埋めるルートコンテナを作成し、各トップレベル領域に対して絶対位置指定された.box要素を生成し、CSSグリッドレイアウトを実装するために必要な内部`<div class="container grid">`要素を挿入します。各ノードにはグリッドテンプレート構成とソートメタデータが注釈として付加され、HTML/CSSコードへの直接コンパイルが容易になります。
  • 生成フェーズ(生成エージェント)生成フェーズでは、セマンティックレイアウトツリーを実行可能なHTML/CSSコードに変換します。ScreenCoderは、自然言語駆動型の生成プロセスを使用して、レイアウトツリー内の各コンポーネントに対して適応型ヒントを作成し、言語モデルを通じて対応するコードを生成します。ヒントには、コンポーネントとレイアウトコンテキストのセマンティックタグが含まれ、ユーザー指示(提供されている場合)が付加されます。生成されたコードは、レイアウトツリーの構造に従って組み立てられ、階層、順序、レイアウト構成が保持されます。システムは、生成されたコード内の灰色のプレースホルダーを元のスクリーンショットからの実際の画像に置き換え、視覚的および意味的な一貫性を回復します。

ScreenCoderの公式ウェブサイトアドレス

  • GitHubリポジトリ:https://github.com/leigest519/ScreenCoder
  • arXiv技術論文:https://arxiv.org/pdf/2507.22827
  • オンラインでデモを体験してください:https://huggingface.co/spaces/Jimmyzheng-10/ScreenCoder

ScreenCoderの応用事例

  • フロントエンド開発の加速UIデザインのスクリーンショットを高品質なHTML/CSSコードに素早く変換することで、フロントエンド開発サイクルを大幅に短縮し、開発チームの効率向上と手作業によるコーディング作業量の削減を支援します。
  • 設計と開発におけるコラボレーションこの機能は、デザインのスクリーンショットを直接実行可能なコードに変換することで、デザインチームと開発チーム間のシームレスなコラボレーションを促進し、コミュニケーションコストを削減し、デザイン意図の正確な伝達を保証します。
  • ラピッドプロトタイピングデザインコンセプトを瞬時にインタラクティブなフロントエンドプロトタイプに変換できるため、製品デザインの初期検証とユーザーテストのプロセスを加速し、ユーザーエクスペリエンスの迅速な反復と最適化をサポートします。
  • 教育と訓練教育ツールとして、学生や初心者開発者がUIデザインとフロントエンドコードの関係を直感的に理解するのに役立ち、学習プロセスを加速させ、実践的なスキルを向上させます。
  • 小規模チームとスタートアップ企業これは、リソースが限られた小規模チームやスタートアップ企業向けに効率的なコード生成ソリューションを提供し、製品プロトタイプや最小実行可能製品(MVP)の迅速なローンチ、開発コストの削減、市場投入までの時間の短縮を支援します。