[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-796":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":23,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":31,"readmeContent":32,"aiSummary":33,"trendingCount":16,"starSnapshotCount":16,"syncStatus":34,"lastSyncTime":35,"discoverSource":36},796,"htmx","bigskysoftware\u002Fhtmx","bigskysoftware","\u003C\u002F> htmx - high power tools for HTML","https:\u002F\u002Fhtmx.org",null,"JavaScript",48183,1602,209,607,0,6,27,211,23,105.11,"Other",false,"master",[26,27,5,28,29,30],"hateoas","html","hyperscript","javascript","rest","2026-06-11 04:00:33","[![\u003C\u002F> htmx](https:\u002F\u002Fraw.githubusercontent.com\u002Fbigskysoftware\u002Fhtmx\u002Fmaster\u002Fwww\u002Fstatic\u002Fimg\u002Fhtmx_logo.1.png \"high power tools for HTML\")](https:\u002F\u002Fhtmx.org)\n\n*high power tools for HTML*\n\n[![Discord](https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F725789699527933952)](https:\u002F\u002Fhtmx.org\u002Fdiscord)\n[![Netlify](https:\u002F\u002Fimg.shields.io\u002Fnetlify\u002Fdba3fc85-d9c9-476a-a35a-e52a632cef78)](https:\u002F\u002Fapp.netlify.com\u002Fsites\u002Fhtmx\u002Fdeploys)\n[![Bundlephobia](https:\u002F\u002Fbadgen.net\u002Fbundlephobia\u002Fdependency-count\u002Fhtmx.org)](https:\u002F\u002Fbundlephobia.com\u002Fresult?p=htmx.org)\n[![Bundlephobia](https:\u002F\u002Fbadgen.net\u002Fbundlephobia\u002Fminzip\u002Fhtmx.org)](https:\u002F\u002Fbundlephobia.com\u002Fresult?p=htmx.org)\n\n## introduction\n\nhtmx allows you to access  [AJAX](https:\u002F\u002Fhtmx.org\u002Fdocs#ajax), [CSS Transitions](https:\u002F\u002Fhtmx.org\u002Fdocs#css_transitions),\n[WebSockets](https:\u002F\u002Fhtmx.org\u002Fextensions\u002Fws\u002F) and [Server Sent Events](https:\u002F\u002Fhtmx.org\u002Fextensions\u002Fsse\u002F)\ndirectly in HTML, using [attributes](https:\u002F\u002Fhtmx.org\u002Freference#attributes), so you can build\n[modern user interfaces](https:\u002F\u002Fhtmx.org\u002Fexamples) with the [simplicity](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHATEOAS) and\n[power](https:\u002F\u002Fwww.ics.uci.edu\u002F~fielding\u002Fpubs\u002Fdissertation\u002Frest_arch_style.htm) of hypertext\n\nhtmx is small ([~14k min.gz'd](https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002Fhtmx.org\u002Fdist\u002F)),\n[dependency-free](https:\u002F\u002Fgithub.com\u002Fbigskysoftware\u002Fhtmx\u002Fblob\u002Fmaster\u002Fpackage.json) &\n[extendable](https:\u002F\u002Fhtmx.org\u002Fextensions)\n\n## motivation\n\n* Why should only `\u003Ca>` and `\u003Cform>` be able to make HTTP requests?\n* Why should only `click` & `submit` events trigger them?\n* Why should only GET & POST be available?\n* Why should you only be able to replace the *entire* screen?\n\nBy removing these arbitrary constraints htmx completes HTML as a\n[hypertext](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHypertext)\n\n## quick start\n\n```html\n  \u003Cscript src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002Fhtmx.org@2.0.10\u002Fdist\u002Fhtmx.min.js\"    \n          integrity=\"sha384-H5SrcfygHmAuTDZphMHqBJLc3FhssKjG7w\u002FCeCpFReSfwBWDTKpkzPP8c+cLsK+V\" \n          crossorigin=\"anonymous\">\u003C\u002Fscript>\n  \u003C!-- have a button POST a click via AJAX -->\n  \u003Cbutton hx-post=\"\u002Fclicked\" hx-swap=\"outerHTML\">\n    Click Me\n  \u003C\u002Fbutton>\n```\n\nThe [`hx-post`](https:\u002F\u002Fhtmx.org\u002Fattributes\u002Fhx-post) and [`hx-swap`](https:\u002F\u002Fhtmx.org\u002Fattributes\u002Fhx-swap) attributes tell htmx:\n\n> \"When a user clicks on this button, issue an AJAX request to \u002Fclicked, and replace the entire button with the response\"\n\nhtmx is the successor to [intercooler.js](http:\u002F\u002Fintercoolerjs.org)\n\n### installing as a node package\n\nTo install using npm:\n\n```\nnpm install htmx.org --save\n```\n\nNote there is an old broken package called `htmx`.  This is `htmx.org`.\n\n## website & docs\n\n* \u003Chttps:\u002F\u002Fhtmx.org>\n* \u003Chttps:\u002F\u002Fhtmx.org\u002Fdocs>\n\n## contributing\nWant to contribute? Check out our [contribution guidelines](CONTRIBUTING.md)\n\nNo time? Then [become a sponsor](https:\u002F\u002Fgithub.com\u002Fsponsors\u002Fbigskysoftware#sponsors)\n\n### hacking guide\n\nTo develop htmx locally, you will need to install the development dependencies.\n\nRun:\n\n```\nnpm install\n```\n\nThen, run a web server in the root.\n\nThis is easiest with:\n\n```\nnpx serve\n```\n\nYou can then run the test suite by navigating to:\n\n\u003Chttp:\u002F\u002F0.0.0.0:3000\u002Ftest\u002F>\n\nAt this point you can modify `\u002Fsrc\u002Fhtmx.js` to add features, and then add tests in the appropriate area under `\u002Ftest`.\n\n* `\u002Ftest\u002Findex.html` - the root test page from which all other tests are included\n* `\u002Ftest\u002Fattributes` - attribute specific tests\n* `\u002Ftest\u002Fcore` - core functionality tests\n* `\u002Ftest\u002Fcore\u002Fregressions.js` - regression tests\n* `\u002Ftest\u002Fext` - extension tests\n* `\u002Ftest\u002Fmanual` - manual tests that cannot be automated\n\nhtmx uses the [mocha](https:\u002F\u002Fmochajs.org\u002F) testing framework, the [chai](https:\u002F\u002Fwww.chaijs.com\u002F) assertion framework\nand [sinon](https:\u002F\u002Fsinonjs.org\u002Freleases\u002Fv9\u002Ffake-xhr-and-server\u002F) to mock out AJAX requests.  They are all OK.\n\n## haiku\n\n*javascript fatigue:\u003Cbr\u002F>\nlonging for a hypertext\u003Cbr\u002F>\nalready in hand*\n","htmx 是一个用于增强 HTML 功能的 JavaScript 库，它允许开发者直接在 HTML 中使用 AJAX、CSS 过渡效果、WebSocket 和服务器发送事件等现代 Web 技术。其核心功能是通过简单的属性（如 hx-post 和 hx-swap）来实现页面的部分更新或交互，而无需编写复杂的 JavaScript 代码。htmx 的设计轻量且无依赖，大小仅约 14KB（压缩后），并且支持扩展。适用于需要快速构建响应式用户界面但又希望保持代码简洁和易于维护的场景，特别适合于对前端框架有顾虑或者希望减少技术栈复杂度的项目。",2,"2026-06-11 02:39:24","top_all"]