用途:构建服务端驱动的 Web 应用,由服务端返回 HTML,客户端只做轻量渲染与即时 UI 反馈。核心原则是服务端为唯一数据源,业务逻辑与数据校验放在服务端。
主要能力:HTMX 用 hx-get、hx-post、hx-target、hx-swap 等属性处理表单提交、局部页面更新、搜索结果与内联校验,服务端返回 HTML 片段而非 JSON;Alpine.js 用 x-data、x-model、x-show 等管理无需持久化的 UI 状态,如下拉可见性、弹窗开关、字符计数。还涵盖加载指示(hx-indicator)、错误处理、SSE/WebSocket 实时更新、确认对话框、焦点管理与 ARIA 无障碍,以及 Axum + Askama 的 Rust 服务端示例。
使用方式:按需加载对应参考文档,如 htmx-requests.md、alpine-state.md、integration.md、feedback-patterns.md、realtime.md、accessibility.md、frameworks/rust-axum.md。资料建议避免用 fetch() 提交表单、避免把服务端数据存入 Alpine、避免用 JavaScript 直接操作 DOM,改用 HTMX 的 hx-swap;Alpine 元素需加 x-cloak 样式 [x-cloak] { display: none !important; },动态内容容器加 aria-live="polite"。
适用场景:表单提交、局部刷新、多步流程(每步用 HTMX 持久化,步内 UI 用 Alpine)、实时更新等。
限制:资料未提供具体安装命令、版本要求、收费或性能数据;页面应在无 JavaScript 时仍可用,动态内容需处理焦点与键盘导航。