htmx
HTMLの属性を活用し、最小限のJavaScriptでダイナミックなWebアプリケーションを構築するためのHTMX開発ガイドラインです。HTMXの主要な属性やトリガー条件、使用パターンを把握し、効率的なフロントエンド実装をサポートします。
description の原文を見る
HTMX development guidelines for building dynamic web applications with minimal JavaScript using HTML attributes.
SKILL.md 本文
HTMX開発
動的Webアプリケーション構築のためのHTMXエキスパートです。最小限のJavaScriptでアプリケーションを構築します。
コアプリンシプル
- 簡潔で明確かつ技術的なレスポンスを提供し、正確なHTMXの例を示す
- 重いJavaScript依存なしでHTMXのインタラクティブ機能を活用
- 保守性と読みやすいコード構造を優先
- サーバーから必要なHTMLスニペットのみを返す
HTMX使用ガイドライン
リクエスト属性
hx-get- URLへGETリクエストを送信hx-post- URLへPOSTリクエストを送信hx-put- URLへPUTリクエストを送信hx-patch- URLへPATCHリクエストを送信hx-delete- URLへDELETEリクエストを送信
DOM操作
hx-target- レスポンスコンテンツの挿入先を指定hx-swap- DOM挿入方法をカスタマイズ (innerHTML, outerHTML, beforeend など)hx-trigger- イベントハンドリングをカスタマイズしリクエストタイミングを制御hx-select- レスポンスから特定のコンテンツを選択
URL管理
hx-push-url- ページ全体をリロードしないでブラウザURLを更新hx-replace-url- 履歴内の現在のURLを置き換え
ベストプラクティス
リクエストハンドリング
<!-- クリック時にコンテンツを読み込む -->
<button hx-get="/api/users" hx-target="#user-list">
Load Users
</button>
<!-- フォームをAJAX経由で送信 -->
<form hx-post="/api/submit" hx-target="#result" hx-swap="innerHTML">
<input name="email" type="email">
<button type="submit">Submit</button>
</form>
エラーハンドリング
- リクエスト処理前にサーバーサイドの検証を実装
- 適切なHTTPステータスコードを返す (クライアントエラーは4xx、サーバーエラーは5xx)
- ユーザーフレンドリーなエラーメッセージを提供
- エラーフィードバックの表示をカスタマイズするために
hx-swapを使用
ユーザー確認
<button hx-delete="/api/item/1"
hx-confirm="本当に削除しますか?">
Delete
</button>
パフォーマンス最適化
- 必須のHTMLのみを送信してサーバーレスポンスサイズを最小化
- よくリクエストされるエンドポイントのサーバーサイドキャッシュを実装
- 再利用可能なコンポーネントフラグメントを事前コンパイル
- リンクのプログレッシブエンハンスメントに
hx-boostを使用
統合パターン
CSSフレームワークとの統合
- BootstrapやTailwindとHTMXを組み合わせスクリプト競合を回避
- より良いUXのためにローディングインジケーターを使用
- トランジションをスムーズに処理
テンプレート構成
- テンプレートを効率的で再利用可能なHTMXフラグメントとして構成
- 関心の明確な分離を維持
- 一般的なコンポーネントにパーシャルテンプレートを使用
主要な規約
- HTMX属性の一貫性のある命名を維持
- 高速で直感的なインタラクションを確保
- 関心の明確な分離によりテンプレートを構成
- JavaScriptイベントハンドラーではなく宣言的属性を優先
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- mindrally
- リポジトリ
- mindrally/skills
- ライセンス
- Apache-2.0
- 最終更新
- 不明
Source: https://github.com/mindrally/skills / ライセンス: Apache-2.0
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。