guiblocks
v0.1.0
Published
A lightweight JavaScript UI component library for building web interfaces with modular blocks.
Maintainers
Readme
GuiBlocks
GuiBlocks は、JavaScript で動的に GUI を構築するための軽量ライブラリです。HTML を直接記述することなく、JavaScript のコードで Web アプリケーションの UI を構成できます。 このライブラリは Java の Swing に影響を受けて設計しており、オブジェクト指向でコンポーネントを組み合わせて UI を構築できるようになっています。
詳しい説明は、Github Pagesで解説しています。
特長
- 部品(コンポーネント)を組み立ててGUIを構築
- PC、スマホのようなレスポンシブデザインに対応
- Canvas、ファイル操作、カラーピッカーなど豊富な部品
- 独自のレイアウト制御:IN / RIGHT / NEWLINE
利用方法
ステップ1:ライブラリの選択と読み込み
cjs/– CommonJS(Node.js等向け)esm/– ES Modules(モダンブラウザ向け)umd/– UMD(HTMLスクリプトタグ向け)
いずれかの中にある GuiBlocks.js または GuiBlocks.min.js を利用してください。
ステップ2:CSSの適用
GUI の外観を整えるために、GuiBlocks.css を HTML に読み込みます。
<link rel="stylesheet" href="./build/umd/GuiBlocks.css">ステップ3:ライブラリの読み込み
<script src="./build/umd/GuiBlocks.min.js"></script>またはモジュール形式で
import Blocks from "./build/esm/GuiBlocks.js";使用例
const panel = new Blocks.Panel("デモパネル");
panel.putMe("container_id", Blocks.PUT_TYPE.IN);
const label = new Blocks.Label("こんにちは");
const button = new Blocks.Button("クリック");
panel.put(label, Blocks.PUT_TYPE.IN);
label.put(button, Blocks.PUT_TYPE.RIGHT);
button.addListener(() => {
alert("クリックされました!");
});主なコンポーネント一覧
クラス名は SLabel ですが GuiBlocks.Label のようにアクセスできます。
| コンポーネント名 | 説明 |
| ---------------------------------- | -------------- |
| SPanel, SGroupBox | 枠付きコンテナ |
| SSlidePanel | 開閉式のスライドパネル |
| SLabel, SButton | テキスト表示・クリック操作 |
| SCheckBox, SComboBox | 入力選択用UI |
| SSlider, SProgressBar | 数値入力・進捗表示 |
| SFileLoadButton, SFileSaveButton | ファイル読み込み・保存操作 |
| SCanvas, SCanvasGL | 2D描画およびWebGL描画 |
| SImagePanel | 画像表示 |
| SColorPicker | 色の選択 |
