HTML をレンダリングするコンポーネント
すべてのウィジェットはクラスです: TsgcHTMLComponent_Chart、 TsgcHTMLComponent_Grid、 TsgcHTMLComponent_Form ほか 86 種類。プロパティを設定してから、 HTML プロパティを読み取ると、そのまま配信できるクリーンな Bootstrap 5 マークアップが得られます。
Delphi、C++ Builder、.NET から、モダンで完全な Web UI をそのまま構築できます。sgcHTML は、チャート、グリッド、フォーム、ダッシュボード、チャットなど 110 種類の既製ウィジェットを備えたサーバーサイドのコンポーネントフレームワークです。多くは TDataSet に直接バインドでき、Bootstrap 5 のマークアップを出力し、htmx によってインタラクティブな状態を保ちます。あなたは Object Pascal または C# を書くだけで、HTML、CSS、JavaScript は sgcHTML が書きます。
ご自身で構築したくない場合は、私たちが代わりに構築します →どの動画も、実際に動作している本物のアプリケーションの画面録画で、ナレーションと字幕が付いています。一覧から選んでください。再生ボタンを押すまで、何もダウンロードされません。
サーバーサイドコンポーネント、Bootstrap 5 のマークアップ、htmx を使って、Delphi から完全な Web UI を構築できます。JavaScript のビルド工程は必要ありません。
sgcHTML を 2 分でサーバーサイドコンポーネント、Bootstrap 5 のマークアップ、htmx を使って、Delphi から完全な Web UI を構築できます。JavaScript のビルド工程は必要ありません。
1 つの exe で動く完全な ERP7.7 MB の Delphi 実行ファイルだけで、DLL を一切使わずに、SQLite 上の完全な Web ERP を提供します。
コンポーネントカタロググリッドやチャートから Kanban ボード、署名パッドまで、110 種類のコンポーネントを一巡します。
グリッドを 9 つの動作で掘り下げる並べ替え、フィルター、ページング、インライン編集、選択、データセット連携を、すべて Pascal から操作します。
htmx を手短にフラグメントの差し替えがページ再読み込みをどう置き換えるのか、Delphi のコードではどう書くのかを紹介します。
WebSocket でリアルタイム更新サーバーのメトリクスを out-of-band フラグメントとして送り込み、カードとチャートを変化に合わせて更新します。
REST 層を持たないレジPOS デモがデータベースをインプロセスで読み取り、間に JSON API を挟みません。
データから直接レポートダッシュボード、ピボットビルダー、27,000 件の注文明細を対象にしたエクスプローラービューです。
1 つのアプリに 50 のコンポーネント倉庫管理デモで、画面ごとに使用しているコンポーネントを数え上げていきます。
配車担当と技術者を並べて同じアプリケーションをデスクトップのボードとスマートフォンで動かし、状態を同期させます。
マルチテナント分離を実証1 つのバイナリ、1 つのデータベースで、テナントごとの厳密な分離を主張ではなく実際に示します。
顧客ポータルログインの内側で、注文、プロフィール、サポートチケットをセルフサービスで扱えます。
再読み込みなしのライブ CRUD入力に応じた検索、インラインでの追加と編集、削除を、htmx フラグメントとして差し替えます。
チケット運用付きのヘルプデスクユーザー登録、チケットのやり取り、ステータス変更まで、すべてサーバー側でレンダリングします。
自社データに基づく AI アシスタントショップアシスタントが、答えをでっち上げるのではなく商品カタログをもとに回答します。
サイト全体のレイアウトナビゲーション、サイドバー、ページ構成を Site コンポーネントで組み立てます。
WebBroker への組み込み既存の Delphi WebBroker アプリケーションに sgcHTML の出力を追加します。
WebBroker と DataSnap の組み合わせすでにあるサービス層から、最新のフロントエンドを配信します。
以下の画面はすべて、sgcHTML を通じて自らの HTML を配信する Delphi アプリケーションです。JavaScript のビルド工程も、別のフロントエンドプロジェクトも必要ありません。各ログインページにあらかじめ入力された認証情報でサインインしてください。

顧客、商品、仕入先、請求の管理に加え、ダッシュボードのチャート、ロールベースの管理機能、passkey サインインを備えています。
ライブデモを開く →
ダッシュボード、レポートカタログ、アドホックなピボットビルダー、27,000 件の受注明細を対象とした探索ビュー。すべてインプロセスで問い合わせます。
ライブデモを開く →
カテゴリー、プロモーション、会計保留、シフト管理、リアルタイムのカスタマーディスプレイを備えたタッチ操作のレジです。
ライブデモを開く →
技術者と作業を割り当てるためのディスパッチボード、Gantt プランナー、技術者のリアルタイム地図。
ライブデモを開く →
入庫、出庫、在庫、移動、循環棚卸に加え、スキャナー向けのハンディターミナル用レイアウトも備えています。
ライブデモを開く →
サーバーのメトリクスを WebSocket で out-of-band な htmx フラグメントへ送り、KPI カードとチャートをリアルタイムに更新します。
ライブデモを開く →
インクリメンタル検索、インラインでの追加・編集・削除。すべて htmx のフラグメントとして差し替えられ、ページの再読み込みはありません。
ライブデモを開く →
英語、アラビア語、ヘブライ語で表示できる 1 つのページです。アラビア語またはヘブライ語を選ぶと、サイドバーからグリッドまでレイアウト全体が右から左に切り替わります。コードの変更は不要で、言語を選ぶだけです。
ライブデモを開く →
ログインの内側で、顧客が自分の注文、プロフィール、サポートチケットを確認できるセルフサービス領域です。
ライブデモを開く →
公開のマーケティングサイト、料金ページ、サインアップの流れの背後に、テナントごとに分離されたコントロールプレーンを備えています。
ライブデモを開く →データグリッド、ピボットテーブル、フォームを自然言語で操作できます。26,000 件の注文明細に対するフィルター、並べ替え、グループ化、AI によるカラムアシスタント、スマート貼り付けを備えています。API キーなしで動作します。
ライブデモを開く →sgcHTML コンポーネントだけで構築したオンラインストアで、商品カタログに基づいて回答するフローティングのチャットアシスタントを備えています。オンライン版には LLM の API キーは不要です。
ライブデモを開く →ChatGPT、Claude、VS Code の内部でレンダリングされる Delphi アプリケーションです。MCP ツールが sgcHTML のページを返し、ホストがそれを表示します。ページ内のボタンもそのまま動作します。
ライブデモを開く →シミュレートされたボイラーループの制御室です。ゲージ、ディスプレイ、操作パネル、ストリップチャート、オシロスコープをサーバーがリアルタイムに更新し、ポーリングは使いません。
ライブデモを開く →タンク、バルブ、ポンプ、アニメーション表示される流れを備えた冷却水プラントのミミック図に、ゲージ、ストリップチャート、アラームを加え、すべて MQTT で駆動します。オンライン版では模擬プラントが動作します。
ライブデモを開く →デモアプリケーションのグリッド、チャート、プランナー、地図、ダッシュボード。いずれも、コードで設定するコンポーネントが生成したものです。










Gantt プランナー、Chart.js のシリーズ、ゲージ、スパークライン、ツリーマップ、ヒートマップは、すべてあなたの Pascal または C# のコードから生成されます。データを指定すれば、sgcHTML がマークアップとクライアント側の処理を出力します。

ユーザーがディメンション、メジャー、集計方法を選ぶと、クロス集計が TFDQuery から再構築されます。間に REST 層はなく、ページがインプロセスでデータベースを直接読み取ります。

すべてのコンポーネントはレスポンシブな Bootstrap 5 マークアップを出力します。倉庫端末のレイアウトも、モバイル専用の別コードベースではなく、同じコンポーネントライブラリをスマートフォンの幅で表示したものです。
HTTP サーバーを起動し、htmx エンジンを接続して、コンポーネントから組み立てたページでリクエストに応答します。Delphi、C++ Builder、.NET で同じ API です。
uses
sgcWebSocket_Server, sgcHTMX_Engine_Server,
sgcHTML_Template_Bootstrap, sgcHTML_Component_Chart;
// 1. Start a server and attach the htmx engine
FServer := TsgcWSHTTPServer.Create(nil);
FServer.Port := 8080;
FServer.OnCommandGet := HandleGet;
FHTMX := TsgcHTMX_Engine_Server.Create(nil);
FHTMX.Server := FServer; // realtime htmx over WebSocket
FServer.Active := True;
// 2. Build the page from components
function TForm1.BuildDashboard: string;
var
oChart: TsgcHTMLComponent_Chart;
oPage: TsgcHTMLTemplate_Bootstrap;
begin
oChart := TsgcHTMLComponent_Chart.Create(nil);
oPage := TsgcHTMLTemplate_Bootstrap.Create(nil);
try
oChart.ChartType := ctBar;
oChart.AddLabel('Q1'); oChart.AddLabel('Q2'); oChart.AddLabel('Q3');
oChart.AddDataset('Revenue', [1200, 1900, 1500],
'#7C3AED', 'rgba(124,58,237,.25)', True);
oPage.Title := 'Dashboard';
oPage.BodyContent := oChart.HTML; // component -> HTML
Result := oPage.GetHTML; // full Bootstrap document
finally
oPage.Free;
oChart.Free;
end;
end;
// includes: sgcWebSocket_Server.hpp, sgcHTMX_Engine_Server.hpp,
// sgcHTML_Template_Bootstrap.hpp, sgcHTML_Component_Chart.hpp
// 1. Start a server and attach the htmx engine
FServer = new TsgcWSHTTPServer(this);
FServer->Port = 8080;
FServer->OnCommandGet = HandleGet;
FHTMX = new TsgcHTMX_Engine_Server(this);
FHTMX->Server = FServer; // realtime htmx over WebSocket
FServer->Active = true;
// 2. Build the page from components
String __fastcall TForm1::BuildDashboard()
{
TsgcHTMLComponent_Chart *oChart = new TsgcHTMLComponent_Chart(NULL);
TsgcHTMLTemplate_Bootstrap *oPage = new TsgcHTMLTemplate_Bootstrap(NULL);
try
{
oChart->ChartType = ctBar;
oChart->AddLabel("Q1"); oChart->AddLabel("Q2"); oChart->AddLabel("Q3");
oChart->AddDataset("Revenue", OPENARRAY(double, (1200, 1900, 1500)),
"#7C3AED", "rgba(124,58,237,.25)", true);
oPage->Title = "Dashboard";
oPage->BodyContent = oChart->HTML; // component -> HTML
return oPage->GetHTML(); // full Bootstrap document
}
__finally
{
delete oPage;
delete oChart;
}
}
using esegece.sgcWebSockets;
// 1. Start a server and attach the htmx engine
var server = new TsgcWebSocketHTTPServer();
server.Port = 8080;
server.OnCommandGet += HandleGet;
var htmx = new TsgcHTMX_Engine_Server();
htmx.Server = server; // realtime htmx over WebSocket
server.Active = true;
// 2. Build the page from components
string BuildDashboard()
{
var chart = new TsgcHTMLComponent_Chart();
chart.ChartType = TsgcHTMLChartType.ctBar;
chart.AddLabel("Q1"); chart.AddLabel("Q2"); chart.AddLabel("Q3");
chart.AddDataset("Revenue", new double[] { 1200, 1900, 1500 },
"#7C3AED", "rgba(124,58,237,.25)", true);
var page = new TsgcHTMLTemplate_Bootstrap();
page.Title = "Dashboard";
page.BodyContent = chart.HTML; // component -> HTML
return page.GetHTML(); // full Bootstrap document
}

sgcHTML は、既存の Delphi、C++ Builder、.NET のバックエンドを Web アプリケーションサーバーに変えます。すべてのコンポーネントは Bootstrap 5 の HTML を出力するネイティブクラスで、htmx が、手書きの JavaScript を 1 行も使わずに、ページのインタラクティブ性とリアルタイム性を保ちます。
すべてのウィジェットはクラスです: TsgcHTMLComponent_Chart、 TsgcHTMLComponent_Grid、 TsgcHTMLComponent_Form ほか 86 種類。プロパティを設定してから、 HTML プロパティを読み取ると、そのまま配信できるクリーンな Bootstrap 5 マークアップが得られます。
TsgcHTMLEngine_Server を配置する(または既存の TsgcWebSocketHTTPServerに HTML を接続する)だけです。リクエストは OnCommandGet ハンドラーに届き、コンポーネントから組み立てたページで応答します。外部の Web スタックは不要です。
sgcHTML は sgcWebSockets サーバーに縛られていません。コンポーネントで構築した同じページを、任意の Embarcadero WebBroker アプリケーションから TsgcHTMX_Engine_Server_WebBroker経由で、または REST エンドポイントと同じポートで WebSocket のライブプッシュに対応する DataSnap サーバーから配信できます。
TsgcHTMX_Engine_Server を追加すると、クリック、フォーム送信、ライブ更新が Pascal または C# のイベントハンドラーに往復します。サーバーが HTML フラグメントをその場で差し替えます。SPA のような操作感を、JavaScript のビルド環境なしで実現します。
htmx は sgcWebSockets サーバー上で動作するため、接続しているすべてのブラウザーにライブの HTML をプッシュできます。ダッシュボード、モニター、チャットウィンドウは、データが変わった瞬間に、サーバー主導でポーリングなしに更新されます。プロキシが WebSocket を遮断する環境では、同じページが代わりにサーバー送信イベントで更新を受け取れます。
TsgcHTMLTemplate_Bootstrap は、コンテンツを完全なレスポンシブ文書で包みます。 TsgcHTMLThemeController 、 TsgcHTMLThemeBuilder は、ライトテーマとダークテーマ、および共有スタイルシートを提供します。Bootstrap 5.3 と htmx は組み込み済みで、実行時に CDN は不要です。
Grid、DataTable、Chart、Select、TreeView、Scheduler、Timeline、Form は TDataSet に直接バインドできます。バインドには LoadFromDataSet / DataSourceを使います。コンポーネントをクエリに向ければ、その行がレンダリングされます。
組み込みの UI テキスト(ボタン、ラベル、検証メッセージ)は、英語、スペイン語、フランス語、ドイツ語、ポルトガル語、イタリア語、オランダ語、スウェーデン語、ノルウェー語、ポーランド語、チェコ語、トルコ語、ロシア語、中国語、日本語、韓国語、アラビア語に対応しています。言語は次で選びます: sgcHTMLSetLanguage。アラビア語とヘブライ語では、ページ全体が自動的に右から左へ反転します: dir="rtl"、Bootstrap の RTL スタイルシート、左右反転したコンポーネントが適用され、コードの変更は不要です。
すべてのコンポーネントは、動的なテキスト、属性、インライン JavaScript、URL を、自動エンコードと URL サニタイズ(sgcHTMLEncode、 sgcHTMLAttrEncode、 sgcJSEncode、 sgcHTMLSanitizeURL)に通すため、ユーザーデータがコンテキストを抜け出してスクリプトを挿入することはできません。
ナビゲーションから、データグリッド、チャート、フォーム、オーバーレイ、AI チャットまで、Bootstrap 5 のあらゆる部品をネイティブコンポーネントとして提供します。各コンポーネントは、Delphi、C++ Builder、.NET のサンプル付きの専用ページにリンクしています。
並べ替え、フィルター、エクスポートに対応し、データセットにバインドできます。
ご自身のデータセットから描画するデータドリブンなビジュアル。
ダッシュボード向けのカード、メディア、KPI タイル。
ダイアログとステータス表示。
プロバイダー選択、トークンストリーミング、RAG ソース引用に対応した AIChat、ライブのオンラインステータスを示す Presence。
既製のサインインフローと管理画面。
サーバーがリアルタイムに更新する制御室パネル。MQTT バインドに対応します。
ページを配信し、リアルタイム性を保つ非ビジュアルの部品。
追加された機能はすべて、使用するまでオフになっているため、使用しないページは以前とまったく同じようにレンダリングされます。完全な一覧は 機能マトリックスにあります。
MCP ツールがテキストの代わりにページで応答します。ページは通常の Web ページと同じコンポーネントで構築され、ChatGPT、Claude、VS Code がレンダリングします。Enterprise または All-Access エディション、もしくは sgcAI パックが必要です。
MCPApp を見る →ページを説明するか、スクリーンショットをデザイナーに渡すと、独自のコンポーネントでページが構築されます。レジストリから構築したスキーマに基づいて応答するため、提示していないクラスを指定することはできず、承認するまで何も適用されません。Enterprise または All-Access エディション、あるいは sgcAI パックの AI ユニットが必要です。
ガイドを読む →1 つのテーブルの一覧、検索、ページング、フォーム、削除、書き込み処理を、データセットまたは独自の SQL に対して 1 つのコンポーネントで提供します。IDE のウィザードで作成できます。
CRUD を見る →自然言語の質問が、フィルター、並べ替え、グループ化、ハイライトに変換され、適用される前に、ご自身のカラムに対して検証されます。内蔵パーサーにより API キーなしで動作し、エディションに AI ユニットが含まれる場合は 7 つのプロバイダーにも対応します。
AIAssistant を見る →WebSocket を遮断するネットワーク向けのサーバー送信イベント、起動していないブラウザーへの Web Push、通知の受信トレイ、設定テーブルを備えています。Web Push には Enterprise または All-Access エディションが必要です。
WebPush を見る →Cookie セッション、CSRF トークン、ログインのスロットリング、ロールによるルート保護。ルートのパスパラメーターとメソッドフィルター、ページテンプレートからのシングルページナビゲーション、生成したマークアップをテストするためのヘルパーを備えています。
Auth を見る →TelerikやDevExpressのやり方でASP.NET Core MVCやRazor Pagesアプリケーションを構築している場合、sgcHTMLが同じ言葉で話せるようになりました。 <sgc-grid>、 <sgc-form>、 <sgc-dialog> 、 <sgc-chart>などのTag Helperと、 Html.Sgc()配下のそれに対応するfluent APIは、サーバー側でBootstrap 5のHTMLを描画し、htmxでコントローラーと通信します。学ぶべきJavaScriptフレームワークも、書くべきJSONデータソースもありません。Razorレイヤーは esegece.sgcHTML.AspNetCore NuGet パッケージで提供され、Community エディションにも含まれ、次のリリースで利用できるようになります。
@* Views/Orders/Index.cshtml, page 1 renders inline from the model *@
@model IQueryable<OrderRow>
<sgc-grid name="orders" key="Id" items="Model"
asp-action="Read" asp-export-action="Export" export="xlsx,pdf"
page-size="15" sortable="true" filterable="true"
searchable="true" push-url="true">
<sgc-column field="Reference" searchable="true" />
<sgc-column field="Customer" searchable="true" />
<sgc-column field="OrderDate" title="Date" format="{0:yyyy-MM-dd}" filter="range" />
<sgc-column field="Total" format="{0:N2}" align="right" filter="range" />
<sgc-column field="Paid" />
</sgc-grid>
// Program.cs
builder.Services.AddControllersWithViews();
builder.Services.AddSgcHtml(o => o.ServeRootPage = false); // the MVC app owns "/"
builder.Services.AddSgcHtmlRazor(); // SgcDataRequest binder, grid state, /sgcHTML.css
// ...
app.UseWebSockets(); // before UseSgcHtml, needed by live charts
app.UseSgcHtml();
app.MapDefaultControllerRoute();
// Controllers/OrdersController.cs
public class OrdersController : Controller
{
private readonly ShopDb FDb;
public OrdersController(ShopDb db) { FDb = db; }
// An IQueryable projection: EF Core turns paging, sort and filters into SQL.
private IQueryable<OrderRow> Rows() =>
FDb.Orders.AsNoTracking().Select(o => new OrderRow
{
Id = o.Id, Reference = o.Reference, Customer = o.Customer.Name,
OrderDate = o.OrderDate, Total = o.Total, Paid = o.Paid
});
public IActionResult Index() => View(Rows());
// Every page, sort, filter and search click of the grid lands here.
public IActionResult Read(SgcDataRequest request) => this.SgcGrid(request, Rows());
// The toolbar export links: the filtered and sorted rows as XLSX or PDF.
public IActionResult Export(SgcDataRequest request) =>
this.SgcGridExport(request, Rows(), "orders");
}
@* The same grid with the fluent builder, the twin of Html.Kendo().Grid<T>() *@
@(Html.Sgc().Grid<OrderRow>("orders")
.Key(o => o.Id)
.Columns(c =>
{
c.Bound(o => o.Reference).Searchable();
c.Bound(o => o.Customer).Searchable();
c.Bound(o => o.OrderDate).Title("Date").Format("{0:yyyy-MM-dd}").Filter(SgcGridFilterKind.Range);
c.Bound(o => o.Total).Format("{0:N2}").Align("right").Filter(SgcGridFilterKind.Range);
c.Bound(o => o.Paid);
})
.Items(Model)
.Read("Read")
.Export(SgcExportFormat.Xlsx, SgcExportFormat.Pdf)
.ExportAction("Export")
.Pageable(15)
.Sortable().Filterable().Searchable().PushUrl())
@* _Layout.cshtml: live="ws" opens the WebSocket that live charts listen to *@
<sgc-scripts live="ws" />
@* The view *@
<sgc-chart name="live-orders" type="line" height="260" live="true">
<sgc-series name="Orders / s" data="new double[] { 0 }" color="#dc3545" />
</sgc-chart>
// builder.Services.AddHostedService<LiveSalesFeed>();
public sealed class LiveSalesFeed : BackgroundService
{
private readonly ISgcHtmlHub FHub;
private readonly Queue<string> FLabels = new Queue<string>();
private readonly Queue<double> FValues = new Queue<double>();
public LiveSalesFeed(ISgcHtmlHub hub) { FHub = hub; }
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
var oRandom = new Random();
while (!stoppingToken.IsCancellationRequested)
{
await Task.Delay(1000, stoppingToken);
FLabels.Enqueue(DateTime.Now.ToString("HH:mm:ss"));
FValues.Enqueue(oRandom.Next(0, 20));
if (FValues.Count > 20) { FLabels.Dequeue(); FValues.Dequeue(); }
// One WebSocket message redraws the chart in every open browser.
await FHub.BroadcastChartAsync("live-orders", FLabels.ToArray(),
new SgcChartSeries("Orders / s", FValues.ToArray(), "#dc3545"));
}
}
}
<sgc-grid> は、ページング、並べ替え、フィルター(テキストと範囲)、検索、XLSXとPDFへのエクスポートをサーバー側で行います。コントローラーは this.SgcGrid(request, query)を返すだけで、EF Coreがすべての操作をパラメーター化されたSQLに変換します。 push-url はページ、並べ替え、フィルターをアドレスバーに保持するため、再読み込みや戻るボタンも正しく動作します。
<sgc-textbox>、 <sgc-select>、 <sgc-datepicker>、 <sgc-checkbox> 、 <sgc-autocomplete> は asp-for でモデルにバインドされ、各入力欄の下に ModelState のエラーを表示します。 <sgc-form hx="true"> はhtmxでPOSTし、 this.SgcRedirect(url) は保存が成功した後に画面遷移します。
sgc-dialog="name" を持つ要素は、そのURLを <sgc-dialog>に読み込みます。POSTが成功した後、 this.SgcCloseDialog("edit-order", refresh: "orders") がダイアログを閉じてグリッドを再読み込みします。自前のスクリプトなしで実現できるポップアップ編集のパターンです。
<sgc-chart> は静的データの描画、 refresh-every="5s"によるアクションのポーリング、または live="true"に対応します。バックグラウンドサービスが hub.BroadcastChartAsync(...) を呼び出すと、開いているすべてのブラウザーがsgcHTMLのWebSocket経由でチャートを再描画します。TelerikやDevExpressのチャートでサーバープッシュを行うにはSignalRの配線が必要ですが、sgcHTMLには標準で組み込まれています。
Telerik UI for ASP.NET CoreやDevExpressからの移行ですか? [DataSourceRequest] は SgcDataRequest、 ToDataSourceResult は this.SgcGrid(request, query) (データだけが必要な場合は query.ToSgcDataResult(request) )に、 Html.Kendo().TextBoxFor(m => m.X) は Html.Sgc().TextBoxFor(m => m.X)になります。実行可能なMVCデモ 22.RazorMvcは、Telerikの注文サンプルをEF Core上でsgcHTMLを使って書き直したものです。
ウィジェットを 1 行で配置したいときは既製のコンポーネントを使い、マークアップを完全に制御したいときはノードレイヤーまで降りて使います。
110 種類の TsgcHTMLComponent_* ウィジェット。プロパティを設定し、必要に応じてデータセットをバインドし、 HTMLを読み取ります。多くのコンポーネントは、1 行のインライン利用向けに静的な Build(...) ヘルパーも公開しています。
TsgcHTMLContainer (自己終了タグ用の Void フラグ付き)、 TsgcHTMLCard、 TsgcHTMLForm、 TsgcHTMLField、 TsgcHTMLButton 、 TsgcHTMLTable といったプリミティブを組み合わせて任意のレイアウトを構成し、 TsgcHTMLTemplate_Bootstrapでレンダリングします。ノードセットには、次のような Bootstrap 部品も含まれます: TsgcHTMLModal、 TsgcHTMLOffcanvas、 TsgcHTMLAccordion、 TsgcHTMLCarousel、 TsgcHTMLToast、 TsgcHTMLProgress、 TsgcHTMLSpinner、 TsgcHTMLListGroupNode、 TsgcHTMLInputGroup、 TsgcHTMLButtonGroupNode、 TsgcHTMLRadio、 TsgcHTMLBreadcrumb、 TsgcHTMLNavbarNode 、 TsgcHTMLImage。
TsgcHTMLPageBuilder はデザイン時エディターを備え、IDE 上でページを組み立てられます。一方、 TsgcHTMLThemeController は、アプリ全体のライトテーマとダークテーマを管理します。
sgcCustomization HTML では、必要なアプリケーションを説明していただくと、eSeGeCe チームが sgcHTML + sgcWebSockets のコンポーネントでそれを構築します。 €149からの 3 つの一回限りのパッケージがあり、ライセンスされたコンポーネントでコンパイル、拡張、再スタイルできる完全なプロジェクトを受け取れます。
IntraWeb、uniGUI、TMS WEB Core、Elevate Web Builder、D2Bridge で構築した Web アプリケーションをすでにお持ちですか?ステップバイステップのガイドが、各フレームワークのコンセプトマッピングとともに、sgcHTML への移行を案内します。私たちのチームに移行の計画や実施を手伝ってほしい場合のための、移行支援フォームもあります。
コンポーネントで構築した同じページを、任意の Embarcadero WebBroker アプリケーションから、または REST エンドポイントと同じポートで WebSocket のライブプッシュに対応する DataSnap サーバーから配信できます。
世界中でリアルタイムアプリケーションを構築する Delphi、C++ Builder、Lazarus、.NET 開発者から信頼されています。
sgcWebSockets ライブラリはとても便利でセットアップも簡単です。これからも頑張ってください!
sgcWebSockets は素晴らしく、サポートも最高です!
ご支援とサポートに本当に感謝しています。コンポーネントが大好きです。
sgcHTML を、Delphi、C++ Builder、.NET 向けの他のコンポーネントライブラリと組み合わせましょう。
エンタープライズ向けの WebSocket、HTTP/2、MQTT、AMQP、WebRTC、AI/LLM コンポーネント。sgcHTML アプリケーションにリアルタイムメッセージングと完全なネットワークスタックを追加できます。
Delphi、C++ Builder、.NET 向けの QUIC および HTTP/3 クライアント・サーバーコンポーネント。sgcHTML がレンダリングした UI を HTTP/3 で配信し、パケットロスのあるネットワークでもページの読み込み遅延を抑えます。
Delphi と C++ Builder 向けの完全な WebRTC メディアエンジン。音声/ビデオ通話、データチャネル、画面共有に対応します。sgcWebSockets Enterprise のアドオンです。
エンタープライズ向けデジタル署名。XAdES、PAdES、CAdES、ASiC に対応し、10 種類のキープロバイダーと 21 の EU 各国プロファイルを備えます。
OpenAPI 3.0 パーサーと SDK ジェネレーター。任意の OpenAPI 仕様を、数秒で厳密に型付けされた Delphi クライアントに変換します。
Delphi と C++ Builder 向けの、ネイティブな Windows Hello、指紋認証、Windows Biometric Framework コンポーネント。
モダンな TLS、IPv6、HTTP/2 に対応した更新版 Indy TCP/IP コンポーネント。Delphi 7 から 13 まで対応します。
Delphi と C++ Builder 向けの 15 種類の AI / LLM / MCP コンポーネント。1 つのチャットコンポーネントから OpenAI、Anthropic、Gemini、DeepSeek、Ollama、Grok、Mistral を利用できます。単体で動作し、sgcWebSockets Core のランタイムを同梱しています。
Delphi と C++ Builder 向けの MQTT 3.1.1 / 5.0、AMQP 0.9.1、AMQP 1.0、Apache Kafka、STOMP クライアントコンポーネント。単体で動作し、sgcWebSockets Core のランタイムを同梱しています。
Delphi と C++ Builder 向けの汎用暗号ライブラリです。対称・非対称暗号、ハッシュ、鍵管理に対応します。sgcWebSockets Standard 以上に無料で同梱、または単体でも利用できます。
WhatsApp Business Cloud API と Telegram TDLib のクライアント。単体で動作し、sgcWebSockets Core のランタイムを同梱しています。